Profiling driven computation reuse: An embedded software synthesis technique for energy and performance optimization

Weidong Wang, Anand Raghunathan, Niraj K. Jha

Research output: Contribution to journalConference articlepeer-review

8 Scopus citations


It has been observed that even highly optimized software programs perform "redundant" computations during their execution, due to the nature (statistics) of the values assumed by input or internal program variables. For embedded software running on battery-powered systems, such computations can be viewed as unnecessary energy overheads, and hence represent opportunities for improvement in energy efficiency. We present a systematic methodology to identify and eliminate redundancies in the computations performed by embedded software programs, by exploiting opportunities that dynamically arise for computation reuse. We report the results of experiments on two different embedded systems - a detailed simulation model of a Fujitsu SPARClite based embedded system, and actual current measurements on a Compaq iPAQ PDA. Our results demonstrate that the proposed technique can reduce energy by up to 46.9% (average of 21.2% and 13.9% for the SPARClite based system and the iPAQ, respectively) while simultaneously improving performance by up to 45.8% (average of 20.7% and 16.8% for the SPARClite based system and the iPAQ, respectively), compared to well-optimized programs that do not employ such a technique.

Original languageAmerican English
Pages (from-to)267-272
Number of pages6
JournalProceedings of the IEEE International Conference on VLSI Design
StatePublished - 2004
EventProceedings - 17th International Conference on VLSI Design, Concurrently with the 3rd International Conference on Embedded Systems Design - Mumbai, India
Duration: Jan 5 2004Jan 9 2004

ASJC Scopus subject areas

  • Hardware and Architecture
  • Electrical and Electronic Engineering

Cite this