Branch Classification: A New Mechanism for Improving Branch Predictor
Performance
Po-Yung Chang, Eric Hao, Tse-Yu Yeh, Yale Patt
patt@eecs.umich.edu
Abstract
There is wide agreement that one of the most important
impediments to the performance of current and future
pipelined superscalar processors is the presence of
conditional branches in the instruction stream. Specula-
tive execution seems to be one solution of choice to the
branch problem, but speculative work is discarded if a
branch is mispredicted. Therefore, we need a very
accurate branch preditor; 95% accuracy is not good enough.
This paper proposes brach classification to help improve
the accuracy of branch predictors. Branch classification
allows an individual branch instruction to be associated
with the branch predictor best suited to predict its
direction. Using this approach, a hybrid branch predictor
can be constructed such that each component brancgh predictor
predicts those branches for which it is best suited. This
paper suggests one classification scheme, analyzes several
branch predictors, and proposes a hybrid branch predictor
that achieves higher prediction accuracy than any branch
preditor previously reported in the literature.
Talk
Overheads (808067 bytes)