|
ABSTRACT
The demand for high-performance architectures and powerful battery-operated mobile devices has accentuated the need for power optimization. While many power-oriented hardware optimization techniques have been proposed and incorporated in current systems, the increasingly critical power constraints have made it essential to look for software-level optimizations as well. The compiler can play a pivotal role in addressing the power constraints of a system as it wields a significant influence on the application's runtime behavior. This paper presents a novel Energy-Aware Compilation (EAC) framework that estimates and optimizes energy consumption of a given code, taking as input the architectural and technological parameters, energy models, and energy/performance/code size constraints. The framework has been validated using a cycle-accurate architectural-level energy simulator and found to be within 6% error margin while providing significant estimation speedup. The estimation speed of EAC is the key to the number of optimization alternatives that can be explored within a reasonable compilation time. As shown in this paper, EAC allows compiler writers and system designers to investigate power-performance tradeoffs of traditional compiler optimizations and to develop energy-conscious high-level code transformations.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
| |
1
|
|
 |
2
|
|
 |
3
|
Luca Benini , Alessandro Bogliolo , Stefano Cavallucci , Bruno Riccó, Monitoring system activity for OS-directed dynamic power management, Proceedings of the 1998 international symposium on Low power electronics and design, p.185-190, August 10-12, 1998, Monterey, California, United States
[doi> 10.1145/280756.280887]
|
 |
4
|
Luca Benini , Robin Hodgson , Polly Siegel, System-level power estimation and optimization, Proceedings of the 1998 international symposium on Low power electronics and design, p.173-178, August 10-12, 1998, Monterey, California, United States
[doi> 10.1145/280756.280881]
|
| |
5
|
William Blume , Rudolf Eigenmann , Keith Faigin , John Grout , Jay Hoeflinger , David A. Padua , Paul Petersen , William M. Pottenger , Lawrence Rauchwerger , Peng Tu , Stephen Weatherford, Polaris: Improving the Effectiveness of Parallelizing Compilers, Proceedings of the 7th International Workshop on Languages and Compilers for Parallel Computing, p.141-154, August 08-10, 1994
|
| |
6
|
Bodin, F., Chamski, Z., Eisenbeis, C., Rohou, E., and Seznec, A. 1998. Gcds: A compiler strategy for trading code size against performance in embedded applications. Tech. Rep. RR-3346, INRIA, Rocquencourt, France. Jan.
|
| |
7
|
|
 |
8
|
|
| |
9
|
Burger, D., Austin, T., and Bennett, S. 1996. Evaluating future microprocessors: The simplescalar tool set. Tech. Rep. CS-TR-96-103, (July). Computer Science Dept., University of Wisconsin, Madison, WI.
|
 |
10
|
|
| |
11
|
|
| |
12
|
|
| |
13
|
|
| |
14
|
G. Chen , B. Kang , M. Kandemir , N. Vijaykrishnan , M. J. Irwin , R. Chandramouli, Energy-Aware Compilation and Execution in Java-Enabled Mobile Devices, Proceedings of the 17th International Symposium on Parallel and Distributed Processing, p.34.1, April 22-26, 2003
|
 |
15
|
|
| |
16
|
|
| |
17
|
|
| |
18
|
|
 |
19
|
Krisztián Flautner , Nam Sung Kim , Steve Martin , David Blaauw , Trevor Mudge, Drowsy caches: simple techniques for reducing leakage power, Proceedings of the 29th annual international symposium on Computer architecture, p.148, May 25-29, 2002, Anchorage, Alaska
|
 |
20
|
|
 |
21
|
Kanad Ghose , Milind B. Kamble, Reducing power in superscalar processor caches using subbanking, multiple line buffers and bit-line segmentation, Proceedings of the 1999 international symposium on Low power electronics and design, p.70-75, August 16-17, 1999, San Diego, California, United States
[doi> 10.1145/313817.313860]
|
| |
22
|
Gonzales, R. and Horowitz, M. 1996. Energy dissipation in general purpose processors. IEEE Journal of Solid-State Circuits 31, 9 (Sept.), 1277--1283.
|
| |
23
|
|
 |
24
|
Chung-Hsing Hsu , Ulrich Kremer, The design, implementation, and evaluation of a compiler algorithm for CPU energy reduction, Proceedings of the ACM SIGPLAN 2003 conference on Programming language design and implementation, June 09-11, 2003, San Diego, California, USA
|
| |
25
|
Irwin, M. J. and Vijaykrishnan, N. 2000. Low power design: From soup to nuts. In Tutorial Notes, ISCA' 2000.
|
| |
26
|
I. Kadayif , M. Kandemir , N. Vijaykrishnan , M. Irwin , A. Sivasubramaniam, EAC: A Compiler Framework for High-Level Energy Estimation and Optimization, Proceedings of the conference on Design, automation and test in Europe, p.436, March 04-08, 2002
|
 |
27
|
|
| |
28
|
|
| |
29
|
|
 |
30
|
M. Kandemir , N. Vijaykrishnan , M. J. Irwin , W. Ye, Influence of compiler optimizations on system power, Proceedings of the 37th conference on Design automation, p.304-307, June 05-09, 2000, Los Angeles, California, United States
[doi> 10.1145/337292.337425]
|
 |
31
|
|
 |
32
|
|
 |
33
|
Monica D. Lam , Edward E. Rothberg , Michael E. Wolf, The cache performance and optimizations of blocked algorithms, Proceedings of the fourth international conference on Architectural support for programming languages and operating systems, p.63-74, April 08-11, 1991, Santa Clara, California, United States
|
 |
34
|
Alvin R. Lebeck , Xiaobo Fan , Heng Zeng , Carla Ellis, Power aware page allocation, Proceedings of the ninth international conference on Architectural support for programming languages and operating systems, p.105-116, November 2000, Cambridge, Massachusetts, United States
|
| |
35
|
Lorch, J. R. and Smith, A. J. 1998. Software strategies for portable computer energy management. IEEE Personal Communications, 60--73.
|
 |
36
|
|
 |
37
|
|
 |
38
|
|
 |
39
|
|
 |
40
|
|
| |
41
|
Musoll, E. 2000. Estimation of the upper-bound useless energy dissipation in a high-performance processor. Kool-Chips.
|
| |
42
|
|
 |
43
|
|
 |
44
|
|
| |
45
|
|
 |
46
|
H. Saputra , M. Kandemir , N. Vijaykrishnan , M. J. Irwin , J. S. Hu , C-H. Hsu , U. Kremer, Energy-conscious compilation based on voltage scaling, Proceedings of the joint conference on Languages, compilers and tools for embedded systems: software and compilers for embedded systems, June 19-21, 2002, Berlin, Germany
|
| |
47
|
Schwab, H. 2004. lp_solve mixed integer linear program solver. ftp://ftp.es.ele.tue.nl/pub/lp_solve/.
|
| |
48
|
Shiue, W.-T. and Chakrabarti, C. 1999. Memory exploration for low power, embedded systems. Tech. Rep. CLPE-TR-9-1999-20, Arizona State University, AZ.
|
 |
49
|
Tajana Šimunić , Luca Benini , Giovanni De Micheli, Cycle-accurate simulation of energy consumption in embedded systems, Proceedings of the 36th ACM/IEEE conference on Design automation, p.867-872, June 21-25, 1999, New Orleans, Louisiana, United States
[doi> 10.1145/309847.310090]
|
| |
50
|
|
| |
51
|
|
 |
52
|
Robert P. Wilson , Robert S. French , Christopher S. Wilson , Saman P. Amarasinghe , Jennifer M. Anderson , Steve W. K. Tjiang , Shih-Wei Liao , Chau-Wen Tseng , Mary W. Hall , Monica S. Lam , John L. Hennessy, SUIF: an infrastructure for research on parallelizing and optimizing compilers, ACM SIGPLAN Notices, v.29 n.12, p.31-37, Dec. 1994
[doi> 10.1145/193209.193217]
|
 |
53
|
|
| |
54
|
|
| |
55
|
Toburen, M. C., Conte, T. M., and Reilly, M. 1998. Instruction scheduling for low power dissipation in high performance processors. In Proc. the Power Driven Micro-architecture Workshop in conjunction with the ISCA'98, Barcelona, Spain.
|
 |
56
|
P. Unnikrishnan , G. Chen , M. Kandemir , D. R. Mudgett, Dynamic compilation for energy adaptation, Proceedings of the 2002 IEEE/ACM international conference on Computer-aided design, p.158-163, November 10-14, 2002, San Jose, California
[doi> 10.1145/774572.774595]
|
 |
57
|
N. Vijaykrishnan , M. Kandemir , M. J. Irwin , H. S. Kim , W. Ye, Energy-driven integrated hardware-software optimizations using SimplePower, Proceedings of the 27th annual international symposium on Computer architecture, p.95-106, June 2000, Vancouver, British Columbia, Canada
|
| |
58
|
Viswanath, R., Wakharkar, V., Watwe, A., and Lebonheur, V. 2000. Thermal performance challenges from silicon to systems. Intel Technology Journal Q3.
|
| |
59
|
Willems, M. and Zivojnovic, V. 1996. DSP-compiler: Product quality for control oriented applications? In Proc. ICSPAT'96. 752--756.
|
| |
60
|
|
 |
61
|
|
 |
62
|
|
| |
63
|
W. Zhang , M. Kandemir , N. Vijaykrishnan , M. J. Irwin , V. De, Compiler Support for Reducing Leakage Energy Consumption, Proceedings of the conference on Design, Automation and Test in Europe, p.11146, March 03-07, 2003
|
CITED BY
|
|
Van Bui , Boyana Norris , Kevin Huck , Lois Curfman McInnes , Li Li , Oscar Hernandez , Barbara Chapman, A component infrastructure for performance and power modeling of parallel scientific applications, Proceedings of the 2008 compFrame/HPC-GECO workshop on Component based high performance, October 16-17, 2008, Karlsruhe, Germany
|
|