Abstract
Advances in semiconductor technology are enabling designs with several hundred million transistors. Since building sophisticated single processor based systems is a complex process from design, verification, and software development perspectives, the use of chip multiprocessing is inevitable in future microprocessors. In fact, the abundance of explicit loop-level parallelism in many embedded applications helps us identify chip multiprocessing as one of the most promising directions in designing systems for embedded applications. Another architectural trend that we observe in embedded systems, namely, multi-voltage processors, is driven by the need of reducing energy consumption during program execution. Practical implementations such as Transmeta’s Crusoe and Intel’s XScale tune processor voltage/frequency depending on current execution load. Considering these two trends, chipmultiprocessing and voltage/frequency scaling, this chapter presents an optimization strategy for an architecture that makes use of both chip parallelism and voltage scaling. In our proposal, the compiler takes advantage of heterogeneity in parallel execution between the loads of different processors and assigns different voltages/frequencies to different processors if doing so reduces energy consumption without increasing overall execution cycles significantly. Our experiments with a set of applications show that this optimization can bring large energy benefits without much performance loss.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsPreview
Unable to display preview. Download preview PDF.
References
L. A. Barroso, K. Gharachorloo, R. McNamara, A. Nowatzyk, S. Qadeer, B. Sano, S. Smith, R. Stets, and B. Verghese. Piranha: A Scalable Architecture Based on Single-Chip Multiprocessing. Proceedings of International Symposium on Computer Architecture, Vancouver, Canada, June 12–14 2000.
S. Carr, K. S. McKinley, and C. Tseng. Compiler Optimizations for Improving Data Locality. Proceedings of the Sixth International Conference on Architectural Support for Programming Languages and Operating Systems, San Jose, October 1994.
DAC’02 Sessions: Design Methodologies Meet Network Applications and System on Chip Design, New Orleans, LA, June 2002.
S. Ghosh, M. Martonosi, and S. Malik. Cache Miss Equations: An Analytical Representation of Cache Misses. Proceedings of the 11th ACM International Conference on Supercomputing, July, 1997.
K. Govil, E. Chan, and H. Wasserman. Comparing Algorithms for Dynamic Speed-Setting of a Low-Power CPU. Proceedings of the 1st ACM International Conference onMobile Computing and Networking, November 1995.
D. Grunwald, P. Levis, K. Farkas, C. Morrey III, and M. Neufeld. Policies for Dynamic Clock Scheduling. Proceedings of the 4th Symposium on Operating System Design and Implementation, October 2000.
C.-H. Hsu and U. Kremer. Dynamic Voltage and Frequency Scaling for Scientific Applications. Proceedings of the 14th Workshop on Languages and Compilers for Parallel Computing, August 2001.
Intel XScale Technology. http://www.intel.com/design/intelxscale/.
I. Kadayif, M. Kandemir, and U. Sezer. An Integer Linear Programming Based Approach for Parallelizing Applications in On-Chip Multiprocessors. In Proc. Design AutomationConference, NewOrleans, LA, June 2002.
A. Klaiber. The Technology Behind Crusoe Processors. Transmeta White Paper, January 2000. http://www.transmeta.com/about/press/white papers.html.
MAJC-5200. 〈http://www.sun.com/microelectronics/MAJC/5200wp〉.html
MP98: A Mobile Processor. http://www.labs.nec.co.jp/MP98/top-e.htm.
T. Okuma, T. Ishihara, and H. Yasuura. Real-Time Task Scheduling for a Variable Voltage Processor. Proceedings of the 12th International Symposium on System Synthesis, 1999.
K. Olukotun, B. A. Nayfeh, L. Hammond, K. Wilson, and K. Chang. The Case for a Single Chip Multiprocessor. Proceedings of the 7th Intl Conference on Architectural Support for Programming Languages and Operating Systems, ACM Press, New York, 1996, pp. 2–11.
POWER4 System Microarchitecture, White Paper, http://www-1.ibm.com/servers/eserver/pseries/hardware/whitepapers/power4.html
H. Saputra, M. Kandemir, N. Vijaykrishnan, M. J. Irwin, J. S. Hu, CH. Hsu, and U. Kremer. Energy-Conscious Compilation Based on Voltage Scaling. Proceedings of ACM SIGPLAN Joint Conference LCTES’02 and SCOPES’02, Berlin, Germany, June, 2002.
Y. Shin, K. Choi, and T. Sakurai. Power Optimization of Real-Time Embedded Systems on Variable Speed Processors. Proceedings of the International Conference on Computer-Aided Design, November 2000.
SIMICS. http://www.virtutech.com/simics/simics.html.
J. P. Singh and D. Culler. Parallel Computer Architecture: A Hardware-Software Approach, Morgan-Kaufmann, 1998.
C.-W. Tseng. Compiler Optimizations for Eliminating Barrier Synchronization. Proceedings of 5th ACM Symposium on Principles and Practice of Parallel Programming, Santa Barbara, CA, July 1995.
M. Weiser, B. Welch, A. Demers, and S. Shenker. Scheduling for Reduced CPU Energy. Proceedings of the 1st Symposium on Operating Systems Design and Implementation, November 1994.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2004 Springer Science + Business Media, Inc.
About this chapter
Cite this chapter
Kadayif, I., Kandemir, M., Vijaykrishnan, N., Irwin, M.J., Kolcu, I. (2004). Reducing Energy Consumption in Chip Multiprocessors Using Workload Variations. In: Macii, E. (eds) Ultra Low-Power Electronics and Design. Springer, Boston, MA. https://doi.org/10.1007/1-4020-8076-X_7
Download citation
DOI: https://doi.org/10.1007/1-4020-8076-X_7
Publisher Name: Springer, Boston, MA
Print ISBN: 978-1-4020-8075-3
Online ISBN: 978-1-4020-8076-0
eBook Packages: Springer Book Archive