Abstract
Software energy estimation is a critical step in the design of energy-efficient embedded systems. Instruction-level simulation techniques, despite several advances, remain too slow for iterative use in system-level exploration. In this paper, we propose a methodology called hybrid simulation, which combines instruction set simulation with selective native execution (execution of some parts of the program directly on the simulation host computer), thereby overcoming the disadvantages of instruction-level simulation (low speed) and pure native execution (estimation accuracy, inapplicability to target-dependent code), while exploiting their advantages. Previously developed techniques for software energy macromodeling are utilized to estimate energy consumption for natively executed sub-programs. We identify and address the main challenges involved in hybrid simulation, and present an automatic tool flow for it, which analyzes a given program and selects functions for native execution in order to achieve maximum estimation efficiency while limiting estimation error. We have applied the proposed hybrid simulation methodology to a variety of embedded software programs, resulting in an average speed-up of 70% and estimation error of at most 6%, compared to one of the fastest publicly-available instruction set simulators.
Original language | English (US) |
---|---|
Article number | 3.3 |
Pages (from-to) | 23-26 |
Number of pages | 4 |
Journal | Proceedings - Design Automation Conference |
DOIs | |
State | Published - 2005 |
Event | 42nd Design Automation Conference, DAC 2005 - Anaheim, CA, United States Duration: Jun 13 2005 → Jun 17 2005 |
All Science Journal Classification (ASJC) codes
- Hardware and Architecture
- Control and Systems Engineering
Keywords
- Embedded Software
- Energy Estimation
- Energy Macro-models
- Hybrid Simulation
- Pointer Analysis