A Break-Even Formulation for Evaluating Branch Predictor Energy Efficiency

M. Co, D. A.B. Weikle, and K. Skadron.
In 2005 Workshop on Complexity-Effective Design held in conjunction with 32nd Annual ACM/IEEE International Symposium on Computer Architecture, June, 2005, Madison, WI.

Abstract

Recent work has demonstrated that a better branch predictor can increase the energy-efficiency of the system, even if the new predictor consumes more energy. Consequently, understanding the tradeoff between reduced mis-speculation, execution time, and increased power spent within a branch predictor is critical.

This paper proposes a simple, effective metric for evaluating the tradeoff between processor energy-efficiency and branch predictor energy. By calculating a \emph{break-even} branch predictor energy budget for a given program and an energy-efficiency target, we are able to evaluate the energy-efficiency of several existing branch predictor designs and provide a simple way to think about energy-efficiency.

Furthermore, we develop a method for deriving a branch predictor energy budget without requiring a power model for the proposed branch predictor. We evaluate this approach by comparing the budgets we calculate with results from simulation. Average error in our estimates is less than 1.5% for all pipeline configurations with a confidence of ±0.02 to ±0.06 Joules (1.7%-2.1%) for the integer benchmarks and ±0.01 to ±0.02 Joules (1.1%-1.7%) for the floating point benchmarks for the evaluated configurations.


Available in postscript or pdf