Branch prediction using selective branch inversion

Abstract
We describe a family of branch predictors that use confidence estimation to improve the performance of an underlying branch predictor. With this method, referred to as selective branch inversion (SBI), a confidence estimator determines when the branch predictor is likely to be incorrect; branch decisions for these low-confidence branches are inverted. We show that SBI with an underlying Gshare branch predictor and an optimized confidence estimator outperforms other equal sized predictors such as the best Gshare predictor and Gshare with dynamic history length fitting, as well as equally complex McFarling and bi-mode predictors. Our analysis shows that SBI achieves its performance through conflict detection and correction, rather than through conflict avoidance as some of the previously proposed predictors such as bi-mode and agree. We also show that SBI can be used with other underlying branch predictors, such as McFarling, to further improve their performance.

This publication has 10 references indexed in Scilit: