Branches that depend directly or indirectly on load instructions are a leading cause of mispredictions by state-of-the-art branch predictors. For a branch of this type, there is a unique dynamic instance of the branch for each unique combination of producer-load addresses. Based on this definition, a study of mispredictions reveals two related problems: (i) Global branch history often fails to distinguish between different dynamic branches. In this case, the predictor is unable to specialize predictions for different dynamic branches, causing mispredictions if their outcomes differ. Ideally, the remedy is to predict a dynamic branch using its program counter (PC) and the addresses of its producer loads, since this context uniquely identifie...
In this paper, we propose a new class of branch predictors, complementary branch predictors, which c...
Branch prediction accuracy remains to be critical for high performance and low power. Prior work has...
Recent attention to speculative execution as a mechanism for increasing performance of single instru...
Branch prediction accuracy remains to be critical for high performance and low power. Prior work has...
Branch predictor (BP) is an essential component in modern processors since high BP accuracy can impr...
All present branch prediction techniques are limited in their accuracy. Our aim is to demonstrate th...
Recent studies of dynamic branch prediction schemes rely almost exclusively on user-only simulations...
Predicated Execution can be used to alleviate the costs associated with frequently mispredicted bran...
Modern superscalar processors rely on branch predictors to sustain a high instruction fetch throughp...
Accurate branch prediction can be seen as a mechanism for enabling design decisions. When short pipe...
. Two-level predictors improve branch prediction accuracy by allowing predictor tables to hold multi...
Modern high-performance architectures require extremely accurate branch prediction to overcome the p...
Modern high-performance architectures require extremely accurate branch prediction to overcome the p...
Dynamic branch predictors are popular because they can deliver accurate branch prediction without ch...
Branch prediction is a key mechanism used to achieve high performance on multiple issue, deeply pipe...
In this paper, we propose a new class of branch predictors, complementary branch predictors, which c...
Branch prediction accuracy remains to be critical for high performance and low power. Prior work has...
Recent attention to speculative execution as a mechanism for increasing performance of single instru...
Branch prediction accuracy remains to be critical for high performance and low power. Prior work has...
Branch predictor (BP) is an essential component in modern processors since high BP accuracy can impr...
All present branch prediction techniques are limited in their accuracy. Our aim is to demonstrate th...
Recent studies of dynamic branch prediction schemes rely almost exclusively on user-only simulations...
Predicated Execution can be used to alleviate the costs associated with frequently mispredicted bran...
Modern superscalar processors rely on branch predictors to sustain a high instruction fetch throughp...
Accurate branch prediction can be seen as a mechanism for enabling design decisions. When short pipe...
. Two-level predictors improve branch prediction accuracy by allowing predictor tables to hold multi...
Modern high-performance architectures require extremely accurate branch prediction to overcome the p...
Modern high-performance architectures require extremely accurate branch prediction to overcome the p...
Dynamic branch predictors are popular because they can deliver accurate branch prediction without ch...
Branch prediction is a key mechanism used to achieve high performance on multiple issue, deeply pipe...
In this paper, we propose a new class of branch predictors, complementary branch predictors, which c...
Branch prediction accuracy remains to be critical for high performance and low power. Prior work has...
Recent attention to speculative execution as a mechanism for increasing performance of single instru...