Cached Two-Level Adaptive Branch Predictors with Multiple Stages

Egan, C., Steven, G.B. and Vintan, L. (2002) Cached Two-Level Adaptive Branch Predictors with Multiple Stages. Lecture Notes in Computer Science (LNCS), 2002. pp. 179-191. ISSN 0302-9743
Copy

During the last decade, the accuracy of branch predictors was significantly improved by the development of Two-Level Adaptive Branch Predictors. However, although these predictors deliver very high prediction rates, they have several disadvantages. Firstly, the size of the secondlevel Pattern History Table (PHT) increases exponentially as a function of history register length and therefore becomes very costly if a large amount of branch history is exploited. Secondly, many of the prediction counters in the PHT are never used. Thirdly, predictions are frequently generated from non-initialised counters. Finally, several branches may update the same counter, resulting in interference between branch predictions. In this paper, we quantify the performance of a novel family of multi-stage Two-Level Adaptive Predictors. In each two-level predictor, the PHT is replaced by a Prediction Cache. Unlike a PHT, a Prediction Cache saves only relevant branch prediction information. Furthermore, predictions are never based on uninitialised entries and interference between branches is eliminated. In the case of a Prediction Cache miss in the first stage, our two-stage predictors uses a default two-bit prediction counter stored in a second stage. We demonstrate that a two-stage Cached Predictor is more accurate than a conventional two-level predictor and quantify the crucial contribution made by the second prediction stage in achieving this high accuracy. We then extend our Cached Predictor by adding a third stage and demonstrate that a Three-Stage Cached Predictor further improves the accuracy of cached predictors.


picture_as_pdf
901720.pdf

View Download

EndNote BibTeX Reference Manager Refer Atom Dublin Core RIOXX2 XML MODS OPENAIRE ASCII Citation METS Data Cite XML OpenURL ContextObject in Span HTML Citation OpenURL ContextObject MPEG-21 DIDL
Export

Downloads