The Significance of Affectors and Affectees Correlations for Branch Prediction

This work investigates the potential of direction-correlations to improve branch prediction. There are two types of direction-correlation: affectors and affectees. This work considers for the first time their implications at a basic level. These correlations are determined based on dataflow graph information and are used to select the subset of global branch history bits used for prediction. If this subset is small then affectors and affectees can be useful to cut down learning time, and reduce aliasing in prediction tables. This paper extends previous work explaining why and how correlation-based predictors work by analyzing the properties of direction-correlations. It also shows that branch history selected using oracle knowledge of direction-correlations improves the accuracy of the limit and realistic conditional branch predictors, that won at the recent branch prediction contest, by up to 30% and 17% respectively. The findings in this paper call for the investigation of predictors that can learn efficiently correlations from long branch history that may be non-consecutive with holes between them.

[1]  T. Juan,et al.  Dynamic history-length fitting: a third level of adaptivity for branch prediction , 1998, Proceedings. 25th Annual International Symposium on Computer Architecture (Cat. No.98CB36235).

[2]  André Seznec,et al.  The L-TAGE Branch Predictor , 2007, J. Instr. Level Parallelism.

[3]  Brad Calder,et al.  Using SimPoint for accurate and efficient simulation , 2003, SIGMETRICS '03.

[4]  André Seznec,et al.  Analysis of the O-GEometric history length branch predictor , 2005, 32nd International Symposium on Computer Architecture (ISCA'05).

[5]  Lei Chen,et al.  Dynamic data dependence tracking and its application to branch prediction , 2003, The Ninth International Symposium on High-Performance Computer Architecture, 2003. HPCA-9 2003. Proceedings..

[6]  Fei Gao,et al.  Exploiting Intra-function Correlation with the Global History Stack , 2005, SAMOS.

[7]  Yale N. Patt,et al.  An analysis of correlation and predictability: what makes two-level branch predictors work , 1998, ISCA.

[8]  Yale N. Patt,et al.  A two-level approach to making class predictions , 2003, 36th Annual Hawaii International Conference on System Sciences, 2003. Proceedings of the.

[9]  Y. Sazeides Dependence Based Value Prediction , 2000 .

[10]  Daniel A. Jiménez,et al.  Dynamic branch prediction with perceptrons , 2001, Proceedings HPCA Seventh International Symposium on High-Performance Computer Architecture.

[11]  Chris Wilkerson,et al.  Improving branch prediction by dynamic dataflow-based identification of correlated branches from a large global history , 2003, ISCA '03.

[12]  Doug Burger,et al.  Evaluating Future Microprocessors: the SimpleScalar Tool Set , 1996 .

[13]  Yiannakis Sazeides,et al.  A Hardware-Based Method for Dynamically Detecting Instruction-Isomorphism and its Application to Branch Prediction , 2004 .

[14]  S. McFarling Combining Branch Predictors , 1993 .

[15]  Daniel A. Jiménez Idealized Piecewise Linear Branch Prediction , 2005, J. Instr. Level Parallelism.

[16]  James E. Smith,et al.  Path-based next trace prediction , 1997, Proceedings of 30th Annual International Symposium on Microarchitecture.

[17]  Stamatis Vassiliadis,et al.  Embedded Computer Systems: Architectures, Modeling, and Simulation 5th International Workshop, SAMOS 2005, Samos, Greece, July 18-20, 2005, Proceedings , 2005, International Conference / Workshop on Embedded Computer Systems: Architectures, Modeling and Simulation.

[18]  Scott A. Mahlke,et al.  Compiler synthesized dynamic branch prediction , 1996, Proceedings of the 29th Annual IEEE/ACM International Symposium on Microarchitecture. MICRO 29.

[19]  André Seznec,et al.  The Idealistic GTL Predictor , 2007, J. Instr. Level Parallelism.

[20]  James E. Smith,et al.  A study of branch prediction strategies , 1981, ISCA '98.

[21]  Olivier Temam,et al.  Dataflow analysis of branch mispredictions and its application to early resolution of branch outcomes , 1998, Proceedings. 31st Annual ACM/IEEE International Symposium on Microarchitecture.

[22]  Manoj Franklin,et al.  Using dataflow based context for accurate value prediction , 2001, Proceedings 2001 International Conference on Parallel Architectures and Compilation Techniques.

[23]  Pierre Michaud,et al.  A PPM-like, Tag-based Predictor. , 2005 .