| ▲ | mcdeltat 11 hours ago | |
Ahh maybe I am the one who is misunderstanding... I'm by no means an expert on this (and it is quite complex) | ||
| ▲ | fc417fc802 9 hours ago | parent [-] | |
Looking at the linked slides again my mental model is what it refers to as "gshare". A tournament predictor between that and "local" addresses the two scenarios I posed but still has obvious failure modes. Local: if( rng() ){ if( true ){ ... }} Global: if( f ){} if( !f ){} Trashed state: if( rng() ){} if( f ){} if( !f ){} But notice that the third happens naturally (ie no need for an RNG) any time the history depth doesn't match up nicely with the looping pattern. Hence my initial question about how real world implementations determine how many layers to pay attention to. You could solve it with a tree structure but do hardware implementers go that far? | ||