Results 1 - 10
of
22
The Design, Implementation, and Evaluation of a Compiler Algorithm for CPU Energy Reduction
- IN PROCEEDINGS OF ACM SIGPLAN CONFERENCE ON PROGRAMMING LANGUAGE DESIGN AND IMPLEMENTATION
, 2003
"... This paper presents the design and implementation of a compiler algorithm that effectively optimizes programs for energy usage using dynamic voltage scaling (DVS). The algorithm identifies program regions where the CPU can be slowed down with negligible performance loss. It is implemented as a sourc ..."
Abstract
-
Cited by 78 (5 self)
- Add to MetaCart
This paper presents the design and implementation of a compiler algorithm that effectively optimizes programs for energy usage using dynamic voltage scaling (DVS). The algorithm identifies program regions where the CPU can be slowed down with negligible performance loss. It is implemented as a source-to-source level transformation using the SUIF2 compiler infrastructure. Physical measurements on a high-performance laptop show that total system (i.e., laptop) energy savings of up to 28% can be achieved with performance degradation of less than 5% for the SPECfp95 benchmarks. On average, the system energy and energydelay product are reduced by 11% and 9%, respectively, with a performance slowdown of 2%. It was also discovered that the energy usage of the programs using our DVS algorithm is within 6% from the theoretical lower bound. To the best of our knowledge, this is one of the first work that evaluates DVS algorithms by physical measurements.
Compile-time Dynamic Voltage Scaling Settings: Opportunities And Limits
- In Proc. of 2003 PLDI
, 2003
"... With power-related concerns becoming dominant aspects of hardware and software design, significant research effort has been devoted towards system power minimization. Among run-time power-management techniques, dynamic voltage scaling (DVS) has emerged as an important approach, with the ability to p ..."
Abstract
-
Cited by 37 (7 self)
- Add to MetaCart
With power-related concerns becoming dominant aspects of hardware and software design, significant research effort has been devoted towards system power minimization. Among run-time power-management techniques, dynamic voltage scaling (DVS) has emerged as an important approach, with the ability to provide significant power savings. DVS exploits the ability to control the power consumption by varying a processor's supply voltage (V) and clock frequency (f). DVS controls energy by scheduling different parts of the computation to different (V, f) pairs
Collaborative Operating System and Compiler Power Management for Real-Time Applications
- In The 9th IEEE Real-Time Embedded Technology and Applications Symposium(RTAS 2003
, 2003
"... Managing energy consumption has become vitally important to battery-operated portable and embedded systems. Dynamic voltage scaling (DVS) reduces the processor’s dynamic power consumption quadratically at the expense of linearly decreasing the performance. When reducing energy with DVS for real-time ..."
Abstract
-
Cited by 25 (3 self)
- Add to MetaCart
Managing energy consumption has become vitally important to battery-operated portable and embedded systems. Dynamic voltage scaling (DVS) reduces the processor’s dynamic power consumption quadratically at the expense of linearly decreasing the performance. When reducing energy with DVS for real-time systems, one must consider the performance penalty to ensure that deadlines can be met. In this paper, we introduce a novel collaborative approach between the compiler and the operating system (OS) to reduce energy consumption. We use the compiler to annotate an application’s source code with path-dependent information called power-management hints (PMHs). This fine-grained information captures the temporal behavior of the application, which varies by executing different paths. During program execution, the OS periodically changes the processor’s frequency and voltage based on the temporal information provided by the PMHs. These speed adaptation points are called power-management points (PMPs). We evaluate our scheme using three embedded applications: a video decoder, automatic target recognition, and a sub-band tuner. Our scheme shows an energy reduction of up to 57 % over no power-management and up to 32% over a static power-management scheme. We compare our scheme to other schemes that solely utilize PMPs for power-management and show experimentally that our scheme achieves more energy savings. We also analyze the advantages and disadvantages of our approach relative to another compiler-directed scheme.
Compiler-Directed Dynamic Voltage Scaling for Memory-Bound Applications
, 2002
"... This paper presents the design and implementation of a compiler algorithm that effectively reduces the energy usage of memory-bound applications via dynamic voltage scaling (DVS). The algorithm identifies program regions where the CPU can be slowed down with negligible performance penalty. It is imp ..."
Abstract
-
Cited by 22 (3 self)
- Add to MetaCart
This paper presents the design and implementation of a compiler algorithm that effectively reduces the energy usage of memory-bound applications via dynamic voltage scaling (DVS). The algorithm identifies program regions where the CPU can be slowed down with negligible performance penalty. It is implemented as a source-to-source level transformation using the SUIF2 compiler infrastructure. Physical measurements on a laptop with a 600 MHz - 1.2 GHz AMD Athlon 4 processor show that CPU energy savings in the range of 9.17% to 55.65% can be achieved with performance degradation in the range of 0.69% to 6.14% for the SPECfp95 benchmarks. On average, the energy and energy-delay product are reduced by 26.58% and 24.11%, respectively, at the cost of the performance slowdown of 3.26%. This paper also discusses a new methodology which attempts to approximate the minimum energy usage by any DVS algorithm. Our compiler-directed DVS algorithm is within 6% from the "optimal" case. To the best of our knowledge, this is one of the first work that evaluates DVS strategies by physical measurements.
Intraprogram dynamic voltage scaling: Bounding opportunities with analytic modeling
- ACM Trans. Archit. Code Optim
, 2004
"... Dynamic voltage scaling (DVS) has become an important dynamic power-management technique to save energy. DVS tunes the power-performance tradeoff to the needs of the application. The goal is to minimize energy consumption while meeting performance needs. Since CPU power consumption is strongly depen ..."
Abstract
-
Cited by 11 (0 self)
- Add to MetaCart
Dynamic voltage scaling (DVS) has become an important dynamic power-management technique to save energy. DVS tunes the power-performance tradeoff to the needs of the application. The goal is to minimize energy consumption while meeting performance needs. Since CPU power consumption is strongly dependent on the supply voltage, DVS exploits the ability to control the power consumption by varying a processor’s supply voltage and clock frequency. However, because of the energy and time overhead associated with switching DVS modes, DVS control has been used mainly at the interprogram level. In this paper, we explore the opportunities and limits of intraprogram DVS scheduling. An analytical model is derived to predict the maximum energy savings that can be obtained using intraprogram DVS given a few known program and processor parameters. This model gives insights into scenarios where energy consumption benefits from intraprogram DVS and those where there is no benefit. The model helps us extrapolate the benefits of intraprogram DVS into the future as processor parameters change. We then examine how much of these predicted benefits can actually be achieved through compile-time optimal settings of DVS modes. We extend an existing mixed-integer linear program formulation for this scheduling problem by accurately accounting
Practical lazy scheduling in sensor networks
- in Proceedings of ACM Conference on Embedded Sensor Systems
, 2003
"... ABSTRACT Experience has shown that the power consumption of sensors andother wireless computational devices is often dominated by their communication patterns. We present a practical realization of lazypacket scheduling that attempts to minimize the total transmission energy in a broadcast network b ..."
Abstract
-
Cited by 10 (2 self)
- Add to MetaCart
ABSTRACT Experience has shown that the power consumption of sensors andother wireless computational devices is often dominated by their communication patterns. We present a practical realization of lazypacket scheduling that attempts to minimize the total transmission energy in a broadcast network by dynamically adjusting each node'stransmission power and rate on a per-packet basis. Lazy packet scheduling leverages the fact that many channel coding schemesare more efficient at lower transmission rates; that is, the energy required to send a fixed amount of data can be reduced by transmit-ting the data at a lower bit rate and transmission power. The optimal per-packet transmission rate in a multi-node net-work is governed in practice by the available bit rates of the given transceiver(s), the nodes ' delay tolerance, and the offered load atevery node contending for the shared broadcast channel. We propose an extension to the traditional CSMA/CA MAC scheme calledL-CSMA/CA that allows individual nodes to continually estimate the current demand for a broadcast channel and adjust their trans-mission schedules accordingly. Our simulation results show that L-CSMA/CA can provide improved energy efficiency in a single-hop, broadcast network (20-25 % with more than 10 nodes, and up to 99 % for four nodes with a standard power function) for bothPoisson and bursty arrivals with only minor degradation the capacity of the channel. 1.
Compiler-Directed Dynamic Voltage and Frequency Scaling for CPU Power and Energy Reduction
, 2003
"... OF THE DISSERTATION COMPILER-DIRECTED DYNAMIC VOLTAGE AND FREQUENCY SCALING FOR CPU POWER AND ENERGY REDUCTION by Chung-Hsing Hsu Dissertation Director: Ulrich Kremer The high power consumption of a processor is becoming a critical problem for both battery-powered devices and high-performance ..."
Abstract
-
Cited by 8 (2 self)
- Add to MetaCart
OF THE DISSERTATION COMPILER-DIRECTED DYNAMIC VOLTAGE AND FREQUENCY SCALING FOR CPU POWER AND ENERGY REDUCTION by Chung-Hsing Hsu Dissertation Director: Ulrich Kremer The high power consumption of a processor is becoming a critical problem for both battery-powered devices and high-performance computers. It reduces circuit reliability, complicates the cooling technology, shortens the battery lifetime, and increases the production and operation costs of a CPU. One e#ective technique, called dynamic voltage scaling (DVS), achieves CPU power reduction through lowering the CPU supply voltage and clock frequency at runtime. It is e#ective because the CPU power is proportional to the clock frequency and to the square of the supply voltage. However, the CPU power savings come at the cost of degraded performance due to the slower clock frequency. Furthermore, the longer the CPU runs, the more power other computer components (e.g., disk and screen) will consume; not to mention that a user may not be willing to sacrifice any performance. Therefore, DVS should only be applied when it will not noticeably a#ect performance.
Application-level prediction of battery dissipation
- Symp. on Low Power Electronics and Design ISLPED’04
"... Mobile, battery-powered devices such as personal digital assistants and web-enabled mobile phones have successfully emerged as new access points to the world’s digital infrastructure. However, the growing gap between device capabilities and battery technology requires novel techniques that extend ba ..."
Abstract
-
Cited by 7 (3 self)
- Add to MetaCart
Mobile, battery-powered devices such as personal digital assistants and web-enabled mobile phones have successfully emerged as new access points to the world’s digital infrastructure. However, the growing gap between device capabilities and battery technology requires novel techniques that extend battery life. Key to the success of such techniques, is our ability to accurately predict the power consumption of a program. In this paper, we investigate the degree to which battery dissipation induced by program execution can be measured by application-level software tools and predicted by a compiler and runtime system. We present a novel technique with which we can accurately estimate whole-program power-consumption for an arbitrary program by composing battery dissipation rates of benchmarks. We empirically evaluate our technique using an iPAQ hand-held device and a number of MiBench and other programs.
Virtual-Machine Driven Dynamic Voltage Scaling
- In Technical Report No.03-21, SICS
, 2003
"... In current DVS approaches, voltage scaling decisions are made statically at compile time, and/or dynamically at the OS level. While this has yielded excellent results for a wide range of applications, there is an even better solution for platform independent code (such as Java bytecode) that execute ..."
Abstract
-
Cited by 4 (2 self)
- Add to MetaCart
In current DVS approaches, voltage scaling decisions are made statically at compile time, and/or dynamically at the OS level. While this has yielded excellent results for a wide range of applications, there is an even better solution for platform independent code (such as Java bytecode) that executes on virtual machines. Such virtual machines have finegrained execution information about the actual workloads that run on them, as opposed to static compilers that at best have o#-line profiling data from previous workloads. Based on their high-level model of the actual workload, virtual machines can make DVS decisions with high precision.

