70 likes | 334 Views
Branch Prediction. Literature. Tse -Yu Yeh and Yale N. Patt , “ A Comparison of Dynamic Branch Predictors that use Two Levels of Branch History,” Proceedings of the 20th annual international symposium on computer architecture, ISCA '93 Also important: Reference 1,2,3 and 4 of this paper
E N D
Literature • Tse-Yu Yeh and Yale N. Patt, “A Comparison of Dynamic Branch Predictors that use Two Levels of Branch History,” Proceedings of the 20th annual international symposium on computer architecture, ISCA '93 • Also important: Reference 1,2,3 and 4 of this paper • Tse-Yu Yeh and Yale N. Patt, “Two-level adaptive training branch prediction, “ Proceedings of the 24th annual international symposium on Microarchitecture
Two-Level Adaptive Branch Prediction First level, execution history register(s):History of the last k branches encountered. Second level, pattern history table(s): k refers to a place in the pattern history table that contains the prediction based on the outcome of the branches at the last j occurences of k,Predictor is for instance a prediction counter.
1st Level Branch History Register or Table (BHR or BHT) • Global History of all branches kept in a single register of length k. • Per-addressTable that contains a history register of length k for each branch. • Per SetTable that contains a history register of length k for each set of branches.
2nd levelPattern History Table (PHT) • global Table with a prediction for all possible values of k. • per-addressTable with a prediction for all possible values of k for each branch address. • Per setTable with a prediction for all possible values of k for each branch set.
Summary Branch prediction is a very important factor in reducing CPI in modern processors that use extensive pipelining. A counter is often used for prediction (2 bit) Two-Level Adaptive Dynamic Branch Prediction ‘learns’ the outcome of branches in different program states. 9 Variations of 2-L.A.B.P. (Global, Per-Address and Per-Set for both levels), but only 4 useful.