Clustered indexing for branch predictors

  • Authors:
  • Veerle Desmet;Hans Vandierendonck;Koen De Bosschere

  • Affiliations:
  • Ghent University - UGent, Department of Electronics and Information Systems (ELIS), Parallel Information Systems (PARIS) Group, Member HiPEAC, Sint-Pietersnieuwstraat 41, 9000 Gent, Belgium;Ghent University - UGent, Department of Electronics and Information Systems (ELIS), Parallel Information Systems (PARIS) Group, Member HiPEAC, Sint-Pietersnieuwstraat 41, 9000 Gent, Belgium;Ghent University - UGent, Department of Electronics and Information Systems (ELIS), Parallel Information Systems (PARIS) Group, Member HiPEAC, Sint-Pietersnieuwstraat 41, 9000 Gent, Belgium

  • Venue:
  • Microprocessors & Microsystems
  • Year:
  • 2007

Quantified Score

Hi-index 0.00

Visualization

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.