Instruction level and operating system profiling for energy exposed software
Energy conscious software design can significantly improve the energy efficiency of a portable system. A software energy estimation technique using instruction class profiling Is presented. The technique is shown to have an estimation error of less than 3% with trivial runtime overhead, based on a set of application programs evaluated on the StrongARM SA-1100 and Hitachi SH-4 microprocessors. A technique to isolate the switching and leakage energy components of software is outlined. The energy overhead of a real-time operating system is also profiled. The overall impact of system-level software energy management is quantified using the MIT muAMPS system as an application example.
software energy instruction current profiling low power system-level energy management