Minimizing CPU energy in real-time systems with discrete speed management

This article presents a general framework to analyze and design embedded systems minimizing the energy consumption without violating timing requirements. A set of realistic assumptions is considered in the model in order to apply the results in practical real-time applications. The processor is assumed to have as a set of discrete operating modes, each characterized by speed and power consumption. The energy overhead and the transition delay incurred during mode switches are considered. Task computation times are modeled with a part that scales with the speed and a part having a fixed duration, to take I/O operations into account. The proposed method allows to compute the optimal sequence of voltage/speed changes that approximates the minimum continuous speed, which guarantees the feasibility of a given set of real-time tasks, without violating the deadline constraints. The analysis is performed both under fixed and dynamic priority assignments.

[1]  Aloysius K. Mok,et al.  A model of hierarchical real-time virtual resources , 2002, 23rd IEEE Real-Time Systems Symposium, 2002. RTSS 2002..

[2]  Giorgio C. Buttazzo,et al.  Hard Real-Time Computing Systems: Predictable Scheduling Algorithms and Applications (Real-Time Systems Series) , 2010 .

[3]  Aloysius K. Mok,et al.  An integrated approach for applying dynamic voltage scaling to hard real-time systems , 2003, The 9th IEEE Real-Time and Embedded Technology and Applications Symposium, 2003. Proceedings..

[4]  Kang G. Shin,et al.  Real-time dynamic voltage scaling for low-power embedded operating systems , 2001, SOSP.

[5]  Seongsoo Lee,et al.  Run-time voltage hopping for low-power real-time systems , 2000, DAC.

[6]  Insup Lee,et al.  Periodic resource model for compositional real-time guarantees , 2003, RTSS 2003. 24th IEEE Real-Time Systems Symposium, 2003.

[7]  Miodrag Potkonjak,et al.  Synthesis techniques for low-power hard real-time systems on variable voltage processors , 1998, Proceedings 19th IEEE Real-Time Systems Symposium (Cat. No.98CB36279).

[8]  F. Frances Yao,et al.  A scheduling model for reduced CPU energy , 1995, Proceedings of IEEE 36th Annual Foundations of Computer Science.

[9]  Jan M. Rabaey,et al.  Digital Integrated Circuits , 2003 .

[10]  Steve Goddard,et al.  A dynamic voltage scaling algorithm for sporadic tasks , 2003, RTSS 2003. 24th IEEE Real-Time Systems Symposium, 2003.

[11]  Gang Quan,et al.  A realistic variable voltage scheduling model for real-time applications , 2002, ICCAD 2002.

[12]  G. Lipari,et al.  The Design Domain of Real-Time Systems by Enrico Bini Ph , 2004 .

[13]  Dakai Zhu,et al.  System-Level Energy Management for Periodic Real-Time Tasks , 2006, 2006 27th IEEE International Real-Time Systems Symposium (RTSS'06).

[14]  Anantha P. Chandrakasan,et al.  Low Power Digital CMOS Design , 1995 .

[15]  Giuseppe Lipari,et al.  Resource partitioning among real-time applications , 2003, 15th Euromicro Conference on Real-Time Systems, 2003. Proceedings..

[16]  José Alberto Fonseca,et al.  The FTT-CAN protocol: why and how , 2002, IEEE Trans. Ind. Electron..

[17]  BiniEnrico,et al.  Minimizing CPU energy in real-time systems with discrete speed management , 2009 .

[18]  Giuseppe Lipari,et al.  A Resource Reservation Algorithm for Power-Aware Scheduling of Periodic and Aperiodic Real-Time Tasks , 2006, IEEE Transactions on Computers.

[19]  John P. Lehoczky,et al.  The rate monotonic scheduling algorithm: exact characterization and average case behavior , 1989, [1989] Proceedings. Real-Time Systems Symposium.

[20]  Aloysius K. Mok,et al.  Improvement in feasibility testing for real-time tasks , 1996, Real-Time Systems.

[21]  James W. Layland,et al.  Scheduling Algorithms for Multiprogramming in a Hard-Real-Time Environment , 1989, JACM.

[22]  Rajesh K. Gupta,et al.  Dynamic voltage scaling for systemwide energy minimization in real-time embedded systems , 2004, Proceedings of the 2004 International Symposium on Low Power Electronics and Design (IEEE Cat. No.04TH8758).

[23]  Hiroto Yasuura,et al.  Voltage scheduling problem for dynamically variable voltage processors , 1998, Proceedings. 1998 International Symposium on Low Power Electronics and Design (IEEE Cat. No.98TH8379).

[24]  Klaus Gresser,et al.  An Event Model for Deadline Verification of Hard Real-Time Systems , 1993, Fifth Euromicro Workshop on Real-Time Systems.

[25]  Rolf Ernst,et al.  Event model interfaces for heterogeneous system analysis , 2002, Proceedings 2002 Design, Automation and Test in Europe Conference and Exhibition.

[26]  Rami Melhem,et al.  Toward the placement of power management points in real-time applications , 2003 .

[27]  Rami G. Melhem,et al.  Power-aware scheduling for periodic real-time tasks , 2004, IEEE Transactions on Computers.

[28]  Giorgio Buttazzo,et al.  Hard Real-Time Computing Systems: Predictable Scheduling Algorithms and Applications , 1997 .

[29]  Chaitali Chakrabarti,et al.  System-level energy-efficient dynamic task scheduling , 2005, Proceedings. 42nd Design Automation Conference, 2005..

[30]  Sanjoy K. Baruah,et al.  Algorithms and complexity concerning the preemptive scheduling of periodic, real-time tasks on one processor , 1990, Real-Time Systems.

[31]  Ragunathan Rajkumar,et al.  Practical voltage-scaling for fixed-priority RT-systems , 2003, The 9th IEEE Real-Time and Embedded Technology and Applications Symposium, 2003. Proceedings..

[32]  Linwei Niu,et al.  Fixed priority scheduling for reducing overall energy on variable voltage processors , 2004, 25th IEEE International Real-Time Systems Symposium.

[33]  Giuseppe Lipari,et al.  Speed modulation in energy-aware real-time systems , 2005, 17th Euromicro Conference on Real-Time Systems (ECRTS'05).

[34]  Eric Rotenberg,et al.  FAST: Frequency-aware static timing analysis , 2006, TECS.