Abstract
Execution along mispredicted paths may or may not affect the accuracy of subsequent branch predictions if recovery mechanisms are not provided to undo the erroneous information that is acquired by the branch prediction storage structures. In this paper, we study four elements of the Two-Level Branch Predictor: the Branch Target Buffer (BTB), the Branch History Register (BHR), the Pattern History Tables (PHTs), and the Return Address Stack (RAS). For each we determine whether a recovery mechanism is needed, and, if so, show how to design a cost-effective one. Using five benchmarks from the SPECint92 suite, we show that there is no need to provide recovery mechanisms for the BTB and the PHTs, but that performance is degraded by an average of 30% if recovery mechanisms are not provided for the BHR and RAS.
Article PDF
Similar content being viewed by others
Avoid common mistakes on your manuscript.
References
M. G. Butler, Aggressive Execution Engines for Surpassing Single Basic Block Execution, Ph.D. Thesis, University of Michigan, 1993.
J. Pierce and T. Mudge, The Effect of Speculative Execution on Cache Performance,Proc. Int’l Parallel Processing Symp. (April 1994).
J. Pierce and T. Mudge, Wrong-Path Instruction Prefetching,Proc. 29th Ann. ACM/IEEE Int’l Symp. Microarchitecture (December 1996).
M. G. Butler and Y. N. Patt, An Investigation of the Performance of Various Dynamic Scheduling Techniques,Proc. 25th Ann. ACM/IEEE Int’l Symp. Microarchitecture, (December 1992).
T. Yeh and Y. N. Patt, Alternative Implementations of Two-Level Adaptive Branch Prediction,Proc. 19th Ann. Symp. on Computer Architecture (May 1992).
T. Yeh, Two-Level Adaptive Branch Prediction and Instruction Fetch Mechanisms for High Performance Superscalar Processors, Ph.D. Thesis, University of Michigan (1993).
M. Johnson, Superscalar Microprocessor Design, Prentice-Hall (1991).
A. R. Talcott, W. Yamamoto, M. J. Serrano, R. C. Wood, and M. Nemirovsky, The Impact of Unresolved Branches on Branch Prediction Scheme Performance,Proc. 21st Ann. Int’l Symp. Computer Architecture (April 1994).
E. Hao, P-Y Chang, and Y. N. Patt, The effect of Speculatively Updating Branch History on Branch Prediction Accuracy, Revisited,Proc. 27th Ann. Int’l Symp. Microarchitecture (November 1994).
Y. N. Patt, W. Hwu, and M. Shebanow, HPS, A New Microarchitecture: Rationale and Introduction,Proc. 18th Ann. Workshop on Microprogramming (December 1985).
L. Gwennap, Intel’s P6 Uses Decoupled Superscalar Design,Microprocessor Report, Vol. 9 No. 2, 1995.
S. Ewedemi, D. Todd, and J. Yen, Design Issues of the High Performance PowerPC 620 Microprocessor, Somerset Design Center (December 1994).
L. Gwennap, Digital 21264 Sets New Standard,Microprocessor Report, Vol. 10, No. 14 (1996).
R. M. Tomasulo, An Efficient Algorithm for Exploiting Multiple Arithmetic Units,IBM J. Res. Develop., Vol. 11 (January 1967).
W. Hwu and Y. N. Patt, Checkpoint Repair for Out-of-Order Execution Machines,IEEE Trans. Comp. (December 1987).
M. G. Butler and Y. N. Patt, An Area-Efficient Register Alias Table For Implementing HPS,Proc. Int’l Conf. Parallel Processing (1990).
S. McFarling, Combining Branch Predictors, Technical Report TN-36, Digital Western Research Laboratory (June 1993).
J. E. Smith and A. R. Pleszkun, Implementation of Precise Interrupts in Pipelined Processors,Proc. 12th Ann. Int’l Symp. Computer Architecture (June 1989).
M. G. Butler and Y. N. Patt, A Comparative Performance Evaluation of Various State Maintenance Mechanisms,Proc. 26th Ann. ACM/IEEE Int’l Symp. Microarchitecture (December 1993).
S. Jourdan, P. Sainrat, and D. Litaize, Exploring Configurations of Functional Units in an Out-of-Order Superscalar Processor,Proc. 22nd Ann. Symp. Computer Architecture (June 1995).
S. Simone, A. Essen, A. Ike, A. Krishnamoorthy, N. Patker, M. Ramaswami, and V. Thirumalaiswamy, Implementation Trade-offs in Using a Restricted Data Flow Architecture in a High Performance RISC Microprocessor,Proc. 22nd Ann. Int’l Symp. Computer Architecture (June 1995).
Author information
Authors and Affiliations
Rights and permissions
About this article
Cite this article
Jourdan, S., Stark, J., Hsing, TH. et al. Recovery requirements of branch prediction storage structures in the presence of mispredicted-path execution. Int J Parallel Prog 25, 363–383 (1997). https://doi.org/10.1007/BF02699883
Issue Date:
DOI: https://doi.org/10.1007/BF02699883