ACM Home Page
Please provide us with feedback. Feedback
Efficient dynamic voltage/frequency scaling through algorithmic loop transformation
Full text PdfPdf (564 KB)
Source
International Conference on Hardware Software Codesign archive
Proceedings of the 7th IEEE/ACM international conference on Hardware/software codesign and system synthesis table of contents
Grenoble, France
SESSION: Power-aware design methodology table of contents
Pages 203-210  
Year of Publication: 2009
ISBN:978-1-60558-628-1
Authors
Mohammad Ali Ghodrat  University of California, Irvine, Irvine, CA, USA
Tony Givargis  University of California, Irvine, Irvine, CA, USA
Sponsors
ACM: Association for Computing Machinery
SIGBED: ACM Special Interest Group on Embedded Systems
SIGMICRO: ACM Special Interest Group on Microarchitectural Research and Processing
SIGDA: ACM Special Interest Group on Design Automation
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 13,   Downloads (12 Months): 13,   Citation Count: 0
Additional Information:

abstract   references   index terms  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/1629435.1629464
What is a DOI?

ABSTRACT

We present a novel loop transformation technique, particularly well suited for optimizing embedded compilers, where an increase in compilation time is acceptable in exchange for significant reduction in energy consumption. Our technique transforms loops containing nested conditional blocks. Specifically, the transformation takes advantage of the fact that the Boolean value of a conditional expression, determining the true/false paths, can be statically analyzed and this information, combined with loop dependency information, can be used to break up the original loop, containing conditional expressions, into a number of smaller loops without conditional expressions. Subsequently, each of the smaller loops can be executed at the lowest voltage/frequency setting yielding overall energy reduction. Our experiments with loop kernels from mpeg4, mpeg-decoder, mpeg-encoder, mp3, qsdpcm and gimp show an impressive energy reduction of 26.56% (average) and 66% (best case) when running on a StrongARM embedded processor. The energy reduction was obtained at no additional performance penalty.


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
A. Aho. Compilers principles, techniques and tools. Addison Wesley, Reading, Massachusetts, 1988.
 
2
A. Azevedo, I. Issenin, R. Cornea, R. Gupta, N. Dutt, A. Veidenbaum, and A. Nicolau. Profile-based dynamic voltage scheduling using program checkpoints. In DATE '02: Proceedings of the conference on Design, automation and test in Europe, pages 168--175, 2002.
 
3
T. D. Burd and R. W. Brodersen. Design issues for dynamic voltage scaling. In ISLPED '00: Proceedings of the 2000 international symposium on Low power electronics and design, pages 9--14, 2000.
 
4
C. L. et. al. Mediabench: A tool for evaluating and synthesizing multimedia and communicatons systems. In International Symposium on Microarchitecture, pages 330--335, 1997.
 
5
H. Falk and P. Marwedel. Control flow driven splitting of loop nests at the source code level. In Proceedings of DATE, pages 410--415, 2003.
 
6
Y. Fei, S. Ravi, A. Raghunathan, and N. K. Jha. Energy-optimizing source code transformations for operating system-driven embedded software. Trans. on Embedded Computing Sys., 7(1):1--26, 2007.
 
7
M. Ghodrat, T. Givargis, and A. Nicolau. Equivalence checking of arithmetic expressions using fast evaluation. In Proceedings of the CASES, pages 147--156, 2005.
 
8
M. Ghodrat, T. Givargis, and A. Nicolau. Control flow optimization in loops using interval analysis. In Proceedings of the CASES, pages 157--166, 2008.
 
9
K. Govil, E. Chan, and H. Wasserman. Comparing algorithm for dynamic speed-setting of a low-power cpu. In MobiCom '95: Proceedings of the 1st annual international conference on Mobile computing and networking, pages 13--25, 1995.
 
10
I. Hong, D. Kirovski, G. Qu, M. Potkonjak, and M. B. Srivastava. Power optimization of variable voltage core-based systems. In DAC '98: Proceedings of the 35th annual conference on Design automation, pages 176--181, 1998.
 
11
Intel. Intel xscale technology-basd embedded processor. Available as http://www.intel.com/design/embeddedpca/applicationsprocessors/302302.htm.
 
12
T. Ishihara and H. Yasuura. Voltage scheduling problem for dynamically variable voltage processors. In ISLPED '98: Proceedings of the 1998 international symposium on Low power electronics and design, pages 197--202, 1998.
 
13
I. Issenin and N. Dutt. Data reuse driven energy-aware mpsoc co-synthesis of memory and communication architecture for streaming applications. In CODES-ISSS 2006, pages 294--299, 2006.
 
14
S.-S. Lim, Y. H. Bae, G. T. Jang, B.-D. Rhee, S. L. Min, C. Y. Park, H. Shin, K. Park, S.-M. Moon, and C. S. Kim. An accurate worst case timing analysis for risc processors. IEEE Trans. Softw. Eng., 21(7):593--604, 1995.
 
15
H. Mehta, R. M. Owens, M. J. Irwin, R. Chen, and D. Ghosh. Techniques for low energy software. In ISLPED '97: Proceedings of the 1997 international symposium on Low power electronics and design, pages 72--75, 1997.
 
16
R. Moore. Interval analysis. Prentice--Hall, Englewood Cli s, N. J., 1966.
 
17
K. D. Nilsen and B. Rygg. Worst-case execution time analysis on modern processors. In LCTES '95: Proceedings of the ACM SIGPLAN 1995 workshop on Languages, compilers, & tools for real-time systems, pages 20--30, 1995.
 
18
U. of Michigan. The simplescalar-arm power modeling project. Available as http://www.eecs.umich.edu/ panalyzer/.
 
19
P. R. Panda and N. D. Dutt. Low-power memory mapping through reducing address bus activity. IEEE Trans. Very Large Scale Integr. Syst., 7(3) 309--320, 1999.
 
20
T. Pering, T. Burd, and R. Brodersen. Voltage scheduling in the iparm microprocessor system. In ISLPED '00: Proceedings of the 2000 international symposium on Low power electronics and design, pages 96--101, 2000.
 
21
A. Peymandoust, T. Simunic, and G. de Micheli. Low power embedded software optimization using symbolic algebra. In DATE '02: Proceedings of the conference on Design, automation and test in Europe, pages 1052--1058, 2002.
 
22
D. Shin, J. Kim, and S. Lee. Intratask voltage scheduling for low-energy, hard real-time applications. volume 18, pages 20--30, 2001.
 
23
P. Stobach. A new technique in scene adaptive coding. In Proceedings of EUSIPCO, 1988.
 
24
T. G. Team. Gnu image manipulation program. Available as http://www.gimp.org/.
 
25
V. Tiwari, S. Malik, and A. Wolfe. Power analysis of embedded software: a first step towards software power minimization. IEEE Trans. Very Large Scale Integr. Syst., 2(4):437--445, 1994.
 
26
V. Tiwari, S. Malik, A. Wolfe, and M. T.-C. Lee. Instruction level power analysis and optimization of software. J. VLSI Signal Process. Syst., 13(2--3):223--238, 1996.
 
27
V. Venkatachalam and M. Franz. Power reduction techniques for microprocessor systems. ACM Comput. Surv., 37(3):195--237, 2005.
 
28
M. Wolfe. How compilers and tools di er for embedded systems. In Proceedings of the CASES, page 1, 2005.
 
29
www.mp3tech.org. Iso mp3 sources. Available as http://www.mp3-tech.org/programmer/sources/dist10.tgz.
 
30
F. Xie, M. Martonosi, and S. Malik. Efficient behavior-driven runtime dynamic voltage scaling policies. In CODES+ISSS '05: Proceedings of the 3rd IEEE/ACM/IFIP international conference on Hardware/software codesign and system synthesis, pages 105--110, 2005.