A unified approach to variable voltage scheduling for nonideal DVS processors

Voltage scheduling is an essential technique used to exploit the benefit of dynamic voltage-scaling processors. Though extensive research exists in this area, current processor limitations such as time and energy transition overhead and voltage-level discretization are often dismissed as insignificant. We show that for hard real-time applications, disregarding these details can lead to suboptimal or even invalid results. We propose two algorithms to account for these limitations. The first is a greedy approach, while the second is more complex, but can significantly reduce the system's energy consumption. Through experimental results on both real and randomly generated systems, we show the effectiveness of both algorithms and explore what conditions make it beneficial to use the complex algorithm over the basic one.

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

[2]  Trevor Mudge,et al.  Dynamic voltage scaling on a low-power microprocessor , 2001 .

[3]  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..

[4]  Hiroto Yasuura,et al.  Software Energy Reduction Techniques for Variable-Voltage Processors , 2001, IEEE Des. Test Comput..

[5]  Sang Lyul Min,et al.  Dynamic voltage scaling algorithm for dynamic-priority hard real-time systems using slack time analysis , 2002, Proceedings 2002 Design, Automation and Test in Europe Conference and Exhibition.

[6]  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).

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

[8]  Bren Christopher Mochocki,et al.  Voltage Scheduling Techniques for Dynamic Voltage Scaling Processors with Practical Limitations , 2003 .

[9]  Thomas D. Burd,et al.  Design issues for Dynamic Voltage Scaling , 2000, ISLPED'00: Proceedings of the 2000 International Symposium on Low Power Electronics and Design (Cat. No.00TH8514).

[10]  Seongsoo Lee,et al.  Run-time power control scheme using software feedback loop for low-power real-time applications , 2000, Proceedings 2000. Design Automation Conference. (IEEE Cat. No.00CH37106).

[11]  C. Douglas Locke,et al.  Building a predictable avionics platform in Ada: a case study , 1991, [1991] Proceedings Twelfth Real-Time Systems Symposium.

[12]  Ulrich Kremer,et al.  The design, implementation, and evaluation of a compiler algorithm for CPU energy reduction , 2003, PLDI '03.

[13]  Taewhan Kim,et al.  Optimal voltage allocation techniques for dynamically variable voltage processors , 2003, DAC '03.

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

[15]  Rami Melhem,et al.  Energy management for real-time embedded applications with compiler support , 2003 .

[16]  Chaitali Chakrabarti,et al.  Variable voltage task scheduling algorithms for minimizing energy , 2001, ISLPED '01.

[17]  Jihong Kim,et al.  On energy-optimal voltage scheduling for fixed-priority hard real-time systems , 2003, TECS.

[18]  Gang Quan,et al.  Energy efficient fixed-priority scheduling for real-time systems on variable voltage processors , 2001, DAC '01.

[19]  Heonshik Shin,et al.  Visual assessment of a real-time system design: a case study on a CNC controller , 1996, 17th IEEE Real-Time Systems Symposium.

[20]  Ying Zhang,et al.  Task feasibility analysis and dynamic voltage scaling in fault-tolerant real-time embedded systems , 2004, Proceedings Design, Automation and Test in Europe Conference and Exhibition.

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

[22]  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).

[23]  Dongkun Shin,et al.  Intra-Task Voltage Scheduling for Low-Energy, Hard Real-Time Applications , 2001, IEEE Des. Test Comput..

[24]  Seongsoo Lee,et al.  Run-time power control scheme using software feedback loop for low-power real-time application , 2000, ASP-DAC '00.

[25]  Hiroto Yasuura,et al.  Real-time task scheduling for a variable voltage processor , 1999, Proceedings 12th International Symposium on System Synthesis.

[26]  Lama H. Chandrasena,et al.  An energy efficient rate selection algorithm for voltage quantized dynamic voltage scaling , 2001, International Symposium on System Synthesis (IEEE Cat. No.01EX526).

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

[28]  Krishnendu Chakrabarty,et al.  Generalized Network Flow Techniques for Dynamic Voltage Scaling in Hard Real-Time Systems , 2003, ICCAD 2003.

[29]  Kiyoung Choi,et al.  Power conscious fixed priority scheduling for hard real-time systems , 1999, DAC '99.