Dynamic history-length fitting: a third level of adaptivity for branch prediction
- 27 November 2002
- conference paper
- Published by Institute of Electrical and Electronics Engineers (IEEE)
- No. 10636897,p. 155-166
- https://doi.org/10.1109/isca.1998.694771
Abstract
Accurate branch prediction is essential for obtaining high performance in pipelined superscalar processors that execute instructions speculatively. Some of the best current predictors combine a part of the branch address with a fixed amount of global history of branch outcomes in order to make a prediction. These predictors cannot perform uniformly well across all workloads because the best amount of history to be used depends on the code, the input data and the frequency of context switches. Consequently, all predictors that use a fixed history length are therefore unable to perform up to their maximum potential. We introduce a method-called DHLF-that dynamically determines the optimum history length during execution, adapting to the specific requirements of any code, input data and system workload. Our proposal adds an extra level of adaptivity to two-level adaptive branch predictors. The DHLF method can be applied to any one of the predictors that combine global branch history with the branch address. We apply the DHLF method to gshare (dhlf-gshare) and obtain near-optimal results for all SPECint95 benchmarks, with and without context switches. Some results are also presented for gskewed (dhlf-gskewed), confirming that other predictors can benefit from our proposal.Keywords
This publication has 12 references indexed in Scilit:
- A Comparison Of Dynamic Branch Predictors That Use Two Levels Of Branch HistoryPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2005
- Elastic history buffer: a low-cost method to improve branch prediction accuracyPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2002
- The bi-mode branch predictorPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2002
- Using hybrid branch predictors to improve branch prediction accuracy in the presence of context switchesPublished by Association for Computing Machinery (ACM) ,1996
- The Mips R10000 superscalar microprocessorIEEE Micro, 1996
- Dynamic path-based branch correlationPublished by Institute of Electrical and Electronics Engineers (IEEE) ,1995
- Branch classificationPublished by Association for Computing Machinery (ACM) ,1994
- A comprehensive instruction fetch mechanism for a processor supporting speculative executionACM SIGMICRO Newsletter, 1992
- Alternative implementations of two-level adaptive branch predictionPublished by Association for Computing Machinery (ACM) ,1992
- Two-level adaptive training branch predictionPublished by Association for Computing Machinery (ACM) ,1991