Proceedings of the 22nd International Conference on Parallel Architectures and Compilation Techniques (1996)
Oct. 20, 1996 to Oct. 23, 1996
Stephan Jourdan , Universite Paul Sabatier
Tse-Hao Hsing , The University of Michigan
Jared Stark , The University of Michigan
Yale N. Patt , The University of Michigan
Branch prediction accuracies determined using trace-driven simulation do not include the effects of executing branches along a mispredicted path. However, branches along a mispredicted path will pollute the branch prediction structures if no recovery mechanisms are provided. Without recovery mechanisms, prediction rates will suffer. In this paper, we determine the appropriateness of recovery mechanisms for the four structures of the Two-Level Adaptive Branch Predictor: the Branch Target Buffer (BTB), the Branch History Register (BHR), the Pattern History Tables (PHTs), and the Return Address Stack (RAS). We then propose cost-effective recovery mechanisms for these branch prediction structures. For five benchmarks from the SPECint92 suite, we show that performance is not affected if recovery mechanisms are not provided for the BTB and the PHTs. On the other hand, without any recovery mechanisms for the BHR and RAS, performance drops by an average of 29%.
branch prediction, speculative execution, superscalar processors
J. Stark, T. Hsing, S. Jourdan and Y. N. Patt, "The Effects of Mispredicted-Path Execution on Branch Prediction Structures," Proceedings of the 22nd International Conference on Parallel Architectures and Compilation Techniques(PACT), Boston, MA, 1996, pp. 0058.