Back to Search Start Over

Dynamic per-branch history length adjustment to improve branch prediction accuracy

Authors :
Kwak, Jong Wook
Jhon, Chu Shik
Source :
Microprocessors & Microsystems. Feb2007, Vol. 31 Issue 1, p63-76. 14p.
Publication Year :
2007

Abstract

Branch misprediction limits processor performance significantly, as the pipeline deepens and the instruction issued per cycle increases. Since the introduction of the two-level adaptive branch predictor, branch history has been a major input vector in branch prediction, together with the address of a branch instruction. Until now, the length of branch history has been statically fixed for all branch instructions, and the history length is usually selected in accordance with the size of branch prediction table. However, different branch instructions require different length histories to achieve high prediction accuracies. Therefore, to dynamically adjust to the optimal history length for each branch instruction, this paper presents “dynamic per-branch history length adjustment” policy, by tracking data dependencies of branches and identifying strongly correlated branches in branch history. Our method provides optimal history length for each branch instruction, resulting in substantial improvement in prediction accuracy. The proposed solution does not require any forms of prior-profilings, and it provides up to 6% improvement in prediction accuracy. Further, it even outperforms, in some applications, the prediction accuracy of optimally selected history length by prior-profilings. [Copyright &y& Elsevier]

Details

Language :
English
ISSN :
01419331
Volume :
31
Issue :
1
Database :
Academic Search Index
Journal :
Microprocessors & Microsystems
Publication Type :
Academic Journal
Accession number :
23772685
Full Text :
https://doi.org/10.1016/j.micpro.2006.08.002