Branch Prediction Reversal by Correlating with Data Values
Juan L. Aragón, J. M. Gonzalez Castro, José M. Garcı́a, Antonio González
Abstract
Juan L. Aragón, J. M. Gonzalez Castro, José M. Garcı́a, Antonio González
Abstract
Branch prediction is one of the main hurdles in the roadmap towards higher clock frequencies and deeper pipelines. This work presents a new approach to enhancing current branch predictors: Selective Branch Prediction Reversal. The rationale behind this proposal is the fact that many branch mispredictions can be avoided if branch prediction is selectively reversed. We present a Branch Prediction Reversal Unit (BPRU) that selectively reverses branch predictions by correlating with the predicted values of the branch inputs, in addition to recent control flow. As a case study, we have included the BPRU in an already proposed branch predictor, the Branch Predictor through Value Prediction (BPVP). The effect is a reduction by half in its original misprediction rate. We have also measured the improvement when the BPRU is used in a hybrid scheme composed of a BPVP and a gshare predictors. Results using immediate updates show average reductions in misprediction rate ranging from 7% to 14%. Performance evaluation of the proposed BPRU in a 20- stage superscalar processor shows an IPC improvement of up to 9%.
A significance statement is not available in the OpenAlex record.
A contribution statement is not available in the OpenAlex record.
Method details are not available in the OpenAlex metadata.
Findings are not separately available in the OpenAlex metadata.
Limitations are not available in the OpenAlex metadata.
Application details are not available in the OpenAlex metadata.
Branch prediction is one of the main hurdles in the roadmap towards higher clock frequencies and deeper pipelines. This work presents a new approach to enhancing current branch predictors: Selective Branch Prediction Reversal. The rationale behind this proposal is the fact that many branch mispredictions can be avoided if branch prediction is selectively reversed. We present a Branch Prediction Reversal Unit (BPRU) that selectively reverses branch predictions by correlating with the predicted values of the branch inputs, in addition to recent control flow. As a case study, we have included the BPRU in an already proposed branch predictor, the Branch Predictor through Value Prediction (BPVP). The effect is a reduction by half in its original misprediction rate. We have also measured the improvement when the BPRU is used in a hybrid scheme composed of a BPVP and a gshare predictors. Results using immediate updates show average reductions in misprediction rate ranging from 7% to 14%. Performance evaluation of the proposed BPRU in a 20- stage superscalar processor shows an IPC improvement of up to 9%.
Key concepts: Branch predictor, Computer science, Ranging, Algorithm, Parallel computing, Telecommunications