This Article 
 Bibliographic References 
 Add to: 
Improving the Accuracy of History-Based Branch Prediction
April 1997 (vol. 46 no. 4)
pp. 469-472

Abstract—In this paper, we present mechanisms that improve the accuracy and performance of history-based branch prediction. By studying the characteristics of the decision structures present in high-level languages, two mechanisms are proposed that reduce the number of wrong predictions made by a branch target buffer (BTB). Execution-driven modeling is used to evaluate the improvement in branch prediction accuracy, as well as the reduction in overall program execution.

[1] C. Young, N. Gloy, and M. Smith, “A Comparative Analysis of Schemes for Correlated Branch Prediction,” Proc. 22nd Ann. Int'l Symp. Computer Architecture, May 1995.
[2] B. Calder and D. Grunwald, Fast&Accurate Instruction Fetch and Branch Prediction Proc. 21st Ann. Int'l Symp. Computer Architecture, pp. 2-11, May 1994.
[3] T.-Y. Yeh and Y. Patt, “A Comparison of Dynamic Branch Predictors that Use Two Levels of Branch History,” Proc. 20th Ann. Int'l Symp. Computer Architecture, pp. 257-266, May 1993.
[4] S. Pan, K. So, and J. Rahmeh, “Improving the Accuracy of Dynamic Branch Prediction Using Branch Correlation,” Proc. Fifth Int'l Conf. Architectural Support for Programming Languages and Operating Systems, pp. 76-84, Oct. 1992.
[5] C.H. Perleberg and A.J. Smith, "Branch Target Buffer Design and Optimization," IEEE Trans. Computers, vol. 42, no. 4, pp. 396-412, Apr. 1993.
[6] D.J. Lilja, "Reducing the Branch Penalty in Pipelined Processors," Computer, pp. 47-55, July 1988.
[7] J.E. Smith, "Branch Predictor Using Random Access Memory," U.S. Patent 4,370,711, Jan.25, 1983.
[8] J.E. Smith, "A Study of Branch Prediction Strategies," Proc. Eighth Ann. Int'l Symp. Computer Architecture, pp. 135-148, June 1981.
[9] C.O. Stjernfeldt, "A Unified Comparison of Branch Prediction Strategies," MS thesis, Dept. of Electrical and Computer Eng., Northeastern Univ., Jan. 1993.
[10] D.R. Kaeli and P.G. Emma, "Branch History Table Prediction of Moving Target Branches Due to Subroutine Returns," Proc. 18th Int'l Symp. Computer Architecture, pp. 34-42,Toronto, May 1991.
[11] C.F. Webb, "Subroutine Call/Return Stack," IBM Technical Disclosure Bulletin, vol. 30, no. 11, Apr. 1988.
[12] D.R. Kaeli and P.G. Emma, "Case Block Table for Folding Multi-way Branches," U.S. Patent No. 5,333,283, U.S. Patent Office, July26, 1994.
[13] D.R. Kaeli, "Branch History Table Optimization," PhD dissertation, Dept. of Electrical Eng., Rutgers Univ., New Brunswick, N.J., Oct. 1992.
[14] P.G. Emma, J.H. Pomerene, G.S. Rao, R.N. Rechtschaffen, H.E. Sachar, and F.J. Sparacio, "Branch Prediction Mechanism in Which a Branch History Table is Updated using an Operand Sensitive Branch Table," U.S. Patent 4,763,245, Aug.9, 1988.
[15] "SPEC Newsletter," Systems Performance Cooperative, Spring 1990.
[16] A.V. Sampogna, "Architectural Implications of C and C++ Programming Models," MS thesis, Dept. of Electrical and Computer Eng., Northeastern Univ., Boston, Aug. 1995.
[17] T.-Y. Yeh and Y.N. Patt, ``Two-Level Adaptive Branch Prediction,'' Proc. 24th Ann. ACM/IEEE Int'l Symp. Microarchitecture, pp. 51-61, 1991.

Index Terms:
History-based branch prediction, BTB, high-level language, execution-driven simulation, call/return stack, case block table.
David R. Kaeli, Philip G. Emma, "Improving the Accuracy of History-Based Branch Prediction," IEEE Transactions on Computers, vol. 46, no. 4, pp. 469-472, April 1997, doi:10.1109/12.588060
Usage of this product signifies your acceptance of the Terms of Use.