An Alternative TAGE-like Conditional Branch Predictor

TAGE is one of the most accurate conditional branch predictors known today. However, TAGE does not exploit its input information perfectly, as it is possible to obtain significant prediction accuracy improvements by complementing TAGE with a statistical corrector using the same input information. This article proposes an alternative TAGE-like predictor making statistical correction practically superfluous.

[1]  Daniel A. Jiménez Composite Confidence Estimators for Enhanced Speculation Control , 2009, 2009 21st International Symposium on Computer Architecture and High Performance Computing.

[2]  David R. Kaeli,et al.  Predicting indirect branches via data compression , 1998, Proceedings. 31st Annual ACM/IEEE International Symposium on Microarchitecture.

[3]  Daniel A. Jiménez,et al.  Piecewise linear branch prediction , 2005, 32nd International Symposium on Computer Architecture (ISCA'05).

[4]  Trevor N. Mudge,et al.  Correlation and Aliasing in Dynamic Branch Predictors , 1996, ISCA.

[5]  Trevor N. Mudge,et al.  The bi-mode branch predictor , 1997, Proceedings of 30th Annual International Symposium on Microarchitecture.

[6]  Alan Jay Smith,et al.  Branch Prediction Strategies and Branch Target Buffer Design , 1995, Computer.

[7]  Trevor N. Mudge,et al.  Analysis of branch prediction via data compression , 1996, ASPLOS VII.

[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]  S. McFarling Combining Branch Predictors , 1993 .

[10]  Dana S. Henry,et al.  Predicting conditional branches with fusion-based hybrid predictors , 2002, Proceedings.International Conference on Parallel Architectures and Compilation Techniques.

[11]  Mikko H. Lipasti,et al.  BADGR: A practical GHR implementation for TAGE branch predictors , 2016, 2016 IEEE 34th International Conference on Computer Design (ICCD).

[12]  Pierre Michaud,et al.  A case for (partially) TAgged GEometric history length branch prediction , 2006, J. Instr. Level Parallelism.

[13]  Yale N. Patt,et al.  Target prediction for indirect jumps , 1997, ISCA '97.

[14]  Daniel A. Jiménez OH-SNAP : Optimized Hybrid Scaled Neural Analog Predictor , 2011 .

[15]  Mikko H. Lipasti,et al.  Bias-Free Branch Predictor , 2014, 2014 47th Annual IEEE/ACM International Symposium on Microarchitecture.

[16]  Yiannakis Sazeides,et al.  Design tradeoffs for the Alpha EV8 conditional branch predictor , 2002, ISCA.

[17]  Trevor Mudge,et al.  Enhancing the instruction fetching mechanism using data compression , 1997 .

[18]  André Seznec The O-GEHL branch predictor , 2004 .

[19]  Yale N. Patt,et al.  Branch Classification: A New Mechanism for Improving Branch Predictor Performance , 1994, Proceedings of MICRO-27. The 27th Annual IEEE/ACM International Symposium on Microarchitecture.

[20]  Ravi Nair,et al.  Dynamic path-based branch correlation , 1995, MICRO 28.

[21]  Trevor N. Mudge,et al.  The YAGS branch prediction scheme , 1998, Proceedings. 31st Annual ACM/IEEE International Symposium on Microarchitecture.

[22]  Yale N. Patt,et al.  An effective programmable prefetch engine for on-chip caches , 1995, MICRO 1995.

[23]  Charles Zhang Mars: A 64-core ARMv8 processor , 2015, 2015 IEEE Hot Chips 27 Symposium (HCS).

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

[25]  Daniel A. Jiménez Multiperspective Perceptron Predictor with TAGE , 2016 .

[26]  André Seznec,et al.  A new case for the TAGE branch predictor , 2011, 2011 44th Annual IEEE/ACM International Symposium on Microarchitecture (MICRO).

[27]  Yale N. Patt,et al.  Alternative implementations of hybrid branch predictors , 1995, Proceedings of the 28th Annual International Symposium on Microarchitecture.

[28]  Y.N. Patt,et al.  Using Hybrid Branch Predictors to Improve Branch Prediction Accuracy in the Presence of Context Switches , 1996, 23rd Annual International Symposium on Computer Architecture (ISCA'96).

[29]  Huiyang Zhou,et al.  PMPM: Prediction by Combining Multiple Partial Matches , 2007, J. Instr. Level Parallelism.

[30]  Huiyang Zhou,et al.  Adaptive Information Processing: An Effective Way to Improve Perceptron Predictors , 2005, J. Instr. Level Parallelism.

[31]  Ian H. Witten,et al.  Data Compression Using Adaptive Coding and Partial String Matching , 1984, IEEE Trans. Commun..

[32]  André Seznec Storage free confidence estimation for the TAGE branch predictor , 2011, 2011 IEEE 17th International Symposium on High Performance Computer Architecture.

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

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

[35]  Yale N. Patt,et al.  Improving branch prediction accuracy by reducing pattern history table interference , 1996, Proceedings of the 1996 Conference on Parallel Architectures and Compilation Technique.

[36]  Pierre Michaud,et al.  A Comprehensive Study of Dynamic Global History Branch Prediction , 2001 .

[37]  Michael D. Smith,et al.  A comparative analysis of schemes for correlated branch prediction , 1995, Proceedings 22nd Annual International Symposium on Computer Architecture.

[38]  Karel Driesen,et al.  Accurate indirect branch prediction , 1998, ISCA.

[39]  A. Seznec,et al.  Trading Conflict And Capacity Aliasing In Conditional Branch Predictors , 1997, Conference Proceedings. The 24th Annual International Symposium on Computer Architecture.

[40]  Daniel A. Jiménez,et al.  Low-power, high-performance analog neural branch prediction , 2008, 2008 41st IEEE/ACM International Symposium on Microarchitecture.

[41]  C. G. Ponder,et al.  An information-theoretic look at branch-prediction , 1990 .

[42]  André Seznec,et al.  TAGE-SC-L Branch Predictors Again , 2016 .

[43]  André Seznec TAGE-SC-L Branch Predictors , 2014 .

[44]  Daniel A. Jiménez,et al.  Fast Path-Based Neural Branch Prediction , 2003, MICRO.

[45]  Meir Feder,et al.  Branch prediction based on universal data compression algorithms , 1998, ISCA.

[46]  Yale N. Patt,et al.  The agree predictor: a mechanism for reducing negative branch history interference , 1997, ISCA '97.

[47]  Joseph T. Rahmeh,et al.  Improving the accuracy of dynamic branch prediction using branch correlation , 1992, ASPLOS V.

[48]  Mario Nemirovsky,et al.  The influence of branch prediction table interference on branch prediction scheme performance , 1995, PACT.

[49]  Ravi Nair,et al.  Optimal 2-Bit Branch Predictors , 1995, IEEE Trans. Computers.

[50]  Daniel A. Jiménez An optimized scaled neural branch predictor , 2011, 2011 IEEE 29th International Conference on Computer Design (ICCD).

[51]  Kevin Skadron,et al.  Revisiting the Perception Predictor Again , 2004 .

[52]  Roland N. Ibbett The MU5 instruction pipeline , 1972, Comput. J..

[53]  Lucian N. Vintan,et al.  Towards a high performance neural branch predictor , 1999, IJCNN'99. International Joint Conference on Neural Networks. Proceedings (Cat. No.99CH36339).

[54]  Karel Driesen,et al.  Multi-stage Cascaded Prediction , 1999, Euro-Par.

[55]  Edward H. Sussenguth,et al.  The IBM ACS Project , 2016, IEEE Annals of the History of Computing.

[56]  André Seznec A 64 Kbytes ISL-TAGE branch predictor , 2011 .

[57]  Ulrich Mayer,et al.  Two level bulk preload branch prediction , 2013, 2013 IEEE 19th International Symposium on High Performance Computer Architecture (HPCA).

[58]  Pierre Michaud,et al.  De-aliased Hybrid Branch Predictors , 1999 .

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

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

[61]  Yale N. Patt,et al.  Improving branch prediction by understanding branch behavior , 2000 .

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

[63]  Yasuo Ishii Fused Two-Level Branch Prediction with Ahead Calculation , 2007, J. Instr. Level Parallelism.

[64]  Daniel A. Jiménez,et al.  Neural methods for dynamic branch prediction , 2002, TOCS.

[65]  Yale N. Patt,et al.  A Comparison Of Dynamic Branch Predictors That Use Two Levels Of Branch History , 1993, Proceedings of the 20th Annual International Symposium on Computer Architecture.

[66]  Kevin Skadron,et al.  Revisiting the Perceptron Predictor Again , 2004 .

[67]  Kevin Skadron,et al.  Merging path and gshare indexing in perceptron branch prediction , 2005, TACO.

[68]  Karel Driesen,et al.  The cascaded predictor: economical and adaptive branch target prediction , 1998, Proceedings. 31st Annual ACM/IEEE International Symposium on Microarchitecture.

[69]  Daniel A. Jiménez,et al.  Multiperspective Perceptron Predictor with TAGE , 2016 .