Article ID Journal Published Year Pages File Type
463102 Microprocessors and Microsystems 2007 10 Pages PDF
Abstract

As a result of resource limitations, state in branch predictors is frequently shared between uncorrelated branches. This interference can significantly limit prediction accuracy. In current predictor designs, the branches sharing prediction information are determined by their branch addresses and thus branch groups are arbitrarily chosen during compilation. This feasibility study explores a more analytic and systematic approach to classify branches into clusters with similar behavioral characteristics. We present several ways to incorporate this cluster information as an additional information source in branch predictors.Our profile-based results demonstrate that cluster information is useful in various branch prediction schemes. When clustered indexing is applied, the same performance can be obtained with 2–8 times less hardware budget. For small predictor budgets, clustered indexing is very cost-effective, e.g., the misprediction rate in an 8 Kib gshare is reduced 12.3% on average for SPEC CPU2000 INT. For large budgets up to 4 Mib, clustered indexing reduces the number of mispredictions by 3–5%, or stated otherwise only half the hardware budget is required to obtain the same performance as the original gshare scheme.

Related Topics
Physical Sciences and Engineering Computer Science Computer Networks and Communications
Authors
, , ,