This Article 
 Bibliographic References 
 Add to: 
Control Speculation for Energy-Efficient Next-Generation Superscalar Processors
March 2006 (vol. 55 no. 3)
pp. 281-291
Juan L. Arag?, IEEE Computer Society
Jos? Gonz?lez, IEEE Computer Society
Antonio Gonz?lez, IEEE Computer Society
Conventional front-end designs attempt to maximize the number of "in-flight” instructions in the pipeline. However, branch mispredictions cause the processor to fetch useless instructions that are eventually squashed, increasing front-end energy and issue queue utilization and, thus, wasting around 30 percent of the power dissipated by a processor. Furthermore, processor design trends lead to increasing clock frequencies by lengthening the pipeline, which puts more pressure on the branch prediction engine since branches take longer to be resolved. As next-generation high-performance processors become deeply pipelined, the amount of wasted energy due to misspeculated instructions will go up. The aim of this work is to reduce the energy consumption of misspeculated instructions. We propose Selective Throttling, which triggers different power-aware techniques (fetch throttling, decode throttling, or disabling the selection logic) depending on the branch prediction confidence level. Results show that combining fetch-bandwidth reduction along with select-logic disabling provides the best performance in terms of overall energy reduction and energy-delay product improvement (14 percent and 10 percent, respectively, for a processor with a 22-stage pipeline and 16 percent and 13 percent, respectively, for a processor with a 42-stage pipeline).

[1] J.L. Aragón, J. González, J.M. García, and A. González, “Confidence Estimation for Branch Prediction Reversal,” Proc. Int'l Conf. High Performance Computing, pp. 214-223, 2001.
[2] J.L. Aragón, J. González, A. González, and J.E. Smith, “Dual Path Instruction Processing,” Proc. Int'l Conf. Supercomputing, 2002.
[3] J.L. Aragón, J. González, and A. González, “Power-Aware Control Speculation through Selective Throttling,” Proc. Int'l Symp. High Performance Computer Architecture, 2003.
[4] A. Baniasadi and A. Moshovos, “Instruction Flow-Based Front-End Throttling for Power-Aware High-Performance Processors,” Proc. Int'l Symp. Low Power Electronics and Design, 2001.
[5] D. Brooks, V. Tiwari, and M. Martonosi, “Wattch: A Frame-Work for Architectural-Level Power Analysis and Optimizations,” Proc. Int'l Symp. Computer Architecture, 2000.
[6] A. Buyuktosunoglu, T. Karkhanis, D.H. Albonesi, and P. Bose, “Energy Efficient Co-Adaptive Instruction Fetch and Issue,” Proc. Int'l Symp. Computer Architecture, 2003.
[7] P.Y. Chang, M. Evers, and Y.N. Patt, “Improving Branch Prediction Accuracy by Reducing Pattern History Table Interference,” Proc. Int'l Conf. Parallel Architectures and Compilation Techniques, 1996.
[8] P.N. Glaskowsky, “Pentium 4 (Partially) Previewed,” Microprocessor Report, Aug. 2000.
[9] M.K. Gowan, L.L. Biro, and D.B. Jackson, “Power Considerations in the Design of the Alpha 21264 Microprocessor,” Proc. Design Automation Conf., June 1998.
[10] D. Grunwald, A. Klauser, S. Manne, and A. Pleszkun, “Confidence Estimation for Speculation Control,” Proc. Int'l Symp. Computer Architecture, 1998.
[11] A. Hartstein and T.R. Puzak, “The Optimum Pipeline Depth for a Microprocessor,” Proc. Int'l Symp. Computer Architecture, pp. 7-13, May 2002.
[12] A. Hartstein and T.R. Puzak, “Optimum Power/Performance Pipeline Depth,” Proc. Int'l Symp. Microarchitecture, Dec. 2003.
[13] T.H. Heil and J.E. Smith, “Selective Dual Path Execution,” technical report, Electrical and Computer Eng. Dept., Univ. of Wisconsin-Madison, 1997.
[14] E. Jacobsen, E. Rotenberg, and J.E. Smith, “Assigning Confidence to Conditional Branch Predictions,” Proc. Int'l Symp. Microarchitecture, 1996.
[15] T. Karkhanis, J.E. Smith, and P. Bose, “Saving Energy with Just in Time Instruction Delivery,” Proc. Int'l Symp. Low Power Electronics and Design, Aug. 2002.
[16] A. Klauser, A. Paithankar, and D. Grunwald, “Selective Eager Execution on the PolyPath Architecture,” Proc. Int'l Symp. Computer Architecture, 1998.
[17] S. Manne, A. Klauser, and D. Grunwald, “Pipeline Gating: Speculation Control For Energy Reduction,” Proc. Int'l Symp. Computer Architecture, 1998.
[18] S. McFarling, “Combining Branch Predictors,” Technical Report #TN-36, Digital Western Research Lab., 1993.
[19] S. Palacharla, N.P. Jouppi, and J.E. Smith, “Complexity-Effective Superscalar Processors,” Proc. Int'l Symp. Computer Architecture, 1997.
[20] D. Parikh, K. Skadron, Y. Zhang, M. Barcella, and M. Stan, “Power Issues Related to Branch Prediction,” Proc. High Performance Computer Architecture, 2002.
[21] C. Small, “Shrinking Devices Put the Squeeze on System Packaging,” EDN, pp. 41-46, Feb. 1994.
[22] V. Srinivasan, D. Brooks, M. Gschwind, P. Bose, V. Zyuban, P.N. Strenski, and P.G. Emma, “Optimizing Pipelines for Power and Performance,” Proc. Int'l Symp. Microarchitecture, pp. 333-344, Dec. 2002.
[23] E. Sprangle and D. Carmean, “Increasing Processor Performance by Implementing Deeper Pipelines,” Proc. Int'l Symp. Computer Architecture, pp. 25-36, 2002.
[24] S. Wallace, B. Calder, and D.M. Tullsen, “Threaded Multiple Path Execution,” Proc. Int'l Symp. Computer Architecture, 1998.
[25] T.Y. Yeh and Y.N. Patt, “Two-Level Adaptive Branch Prediction,” Proc. Intl Symp. Microarchitecture, 1991.

Index Terms:
Control speculation, energy-aware systems, low-power design, processor architecture.
Juan L. Arag?, Jos? Gonz?lez, Antonio Gonz?lez, "Control Speculation for Energy-Efficient Next-Generation Superscalar Processors," IEEE Transactions on Computers, vol. 55, no. 3, pp. 281-291, March 2006, doi:10.1109/TC.2006.32
Usage of this product signifies your acceptance of the Terms of Use.