2003 · 11 citations · 21 references
EngineeringComputer EngineeringComputer ScienceComputer ArchitectureData StructuresExperimental PerformanceBenchmarkingBranch PredictionCachingHardware AccelerationMemory Hierarchy OptimizationBranch History TablesBranch Prediction AccuracyCorrelation-based PredictionInterferencePrediction
Branch predictors typically use combinations of branch PC bits and branch histories to make predictions. Recent improvements in branch predictors have come from reducing the effect of interference, i.e. multiple branches mapping to the same table entries. In contrast, the branch difference predictor (BDP) uses data values as additional information to improve the accuracy of conditional branch predictors. The BDP maintains a history of differences between branch source register operands, and feeds these into the prediction process. An important component of the BDP is a rare event predictor (REP) which reduces learning time and table interference. An REP is a cache-like structure designed to store patterns whose predictions differ from the norm. Initially, ideal interference-free predictors are evaluated to determine how data values improve correlation. Next, execution driven simulations of complete designs realize this potential. The BDP reduces the misprediction rate of five SPEC95 integer benchmarks by up to 33% compared to gshare and by up to 15% compared to Bi-Mode predictors.
21
The SimpleScalar tool set, version 2.0
Doug Burger, Todd Austin · ACM SIGARCH Computer Architecture News · 1997 · 3.1K citations · Full text
A study of branch prediction strategies
James E. Smith · 1998 · 794 citations · Full text
Implementing the PPM data compression scheme
Alistair Moffat · IEEE Transactions on Communications · 1990 · 421 citations
Exceeding the dataflow limit via value prediction
Mikko H. Lipasti, John Paul Shen · 2002 · 241 citations
The predictability of data values
Yanos Sazeides, James E. Smith · 2002 · 230 citations