• DocumentCode
    1518502
  • Title

    Walk-time address adjustment for improving the accuracy of dynamic branch prediction

  • Author

    Chen, Chien-Ming ; King, Chung-Ta

  • Author_Institution
    Dept. of Comput. Sci., Nat. Tsing Hua Univ., Hsinchu, Taiwan
  • Volume
    48
  • Issue
    5
  • fYear
    1999
  • fDate
    5/1/1999 12:00:00 AM
  • Firstpage
    457
  • Lastpage
    469
  • Abstract
    Dynamic branch prediction has been an effective technique for boosting the performance of modern high performance microprocessors. Since hardware predictors only have a limited number of 2-bit counters but programs often have a large, variable number of branches, two branches in the programs may thus be mapped to the same 2-bit counter. Predictions for these two branches may interfere with each other. This, in turn, reduces the prediction accuracy. In this paper, we discuss how a pre-run-time optimization technique, called address adjustment, can help to reduce branch interference. The technique adjusts the addresses of conditional branches in the given program by inserting NOP instructions at appropriate locations. In this way, the mapping between the conditional branches and the 2-bit counters can be controlled and branch interference can be minimized. Address adjustment can be applied at compile or link time, and the latter makes it a walk-time transformation technique. Three possible address adjustment schemes are investigated: constrained address adjustment, relaxed address adjustment, and branch classification. Experimental results show that address adjustment can reduce branch misprediction ratios on existing hardware predictors. Among the three methods, branch classification has the most improvement
  • Keywords
    computer architecture; microprocessor chips; optimising compilers; 2-bit counters; NOP instructions; address adjustment; branch classification; constrained address adjustment; dynamic branch prediction; high performance microprocessors; pre-run-time optimization; relaxed address adjustment; walk-time address adjustment; Accuracy; Boosting; Computer architecture; Counting circuits; Hardware; Interference constraints; Microprocessors; Optimizing compilers; Pipelines; Process design;
  • fLanguage
    English
  • Journal_Title
    Computers, IEEE Transactions on
  • Publisher
    ieee
  • ISSN
    0018-9340
  • Type

    jour

  • DOI
    10.1109/12.769430
  • Filename
    769430