Integration of dynamic voltage scaling and soft real-time scheduling for open mobile systems

Battery-powered mobile devices are becoming increasingly important computing platforms, which require low energy consumption while meeting the resource demands of a dynamic application workload. Most proposed dynamic voltage scaling (DVS) algorithms, targeting either best-effort or hard real-time systems, however, cannot be directly applied to such open mobile systems. This paper presents a framework to integrate DVS into soft real-time (SRT) scheduling for open mobile systems, achieving energy saving of DVS while preserving resource guarantees of SRT scheduling. The integrated framework makes three major contributions. First, multimedia applications reserve resource based on their average resource usage, without the knowledge of worst-case execution time, which is difficult to estimate in an open mobile environment. Second, the SRT scheduling ensures the correctness of reservation admission and enforcement in a variable speed context. Finally, the DVS manager reduces the processor energy consumption by utilizing the unallocated resource, reclaiming the allocated but unused resource, or avoiding the unused resource. Our extensive simulation results demonstrate that our framework is able to save 4% to 32% energy while slightly affecting application performance.

[1]  Thomas D. Burd,et al.  The simulation and evaluation of dynamic voltage scaling algorithms , 1998, Proceedings. 1998 International Symposium on Low Power Electronics and Design (IEEE Cat. No.98TH8379).

[2]  Stefan Savage,et al.  Processor capacity reserves: operating system support for multimedia applications , 1994, 1994 Proceedings of IEEE International Conference on Multimedia Computing and Systems.

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

[4]  Klara Nahrstedt,et al.  CPU service classes for multimedia applications , 1999, Proceedings IEEE International Conference on Multimedia Computing and Systems.

[5]  Prashant J. Shenoy,et al.  Application performance in the QLinux multimedia operating system , 2000, ACM Multimedia.

[6]  Jason Nieh,et al.  The design, implementation and evaluation of SMART: a scheduler for multimedia applications , 2001 .

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

[8]  Flavius Gruian Hard real-time scheduling for low-energy using stochastic data and DVS processors , 2001, ISLPED '01.

[9]  Shuichi Oikawa,et al.  Resource kernels: a resource-centric approach to real-time and multimedia systems , 2001, Electronic Imaging.

[10]  Sanjoy K. Baruah,et al.  Greedy reclamation of unused bandwidth in constant-bandwidth servers , 2000, Proceedings 12th Euromicro Conference on Real-Time Systems. Euromicro RTS 2000.

[11]  Alan Jay Smith,et al.  Improving dynamic voltage scaling algorithms with PACE , 2001, SIGMETRICS '01.

[12]  Edward G. Coffman,et al.  Waiting Time Distributions for Processor-Sharing Systems , 1970, JACM.

[13]  Michael B. Jones,et al.  CPU reservations and time constraints: implementation experience on windows NT , 1999 .

[14]  Vincent K. N. Lau,et al.  Automatic Performance Setting for Dynamic Voltage Scaling , 2002, Wirel. Networks.

[15]  R. Brodersen,et al.  Voltage Scheduling in the lpARM Microprocessor System , 2000 .

[16]  Klara Nahrstedt,et al.  R-EDF: a reservation-based EDF scheduling algorithm for multiple multimedia task classes , 2001, Proceedings Seventh IEEE Real-Time Technology and Applications Symposium.

[17]  Clifford W. Mercer Operating system support for multimedia applications , 1994, MULTIMEDIA '94.

[18]  Scott Shenker,et al.  Scheduling for reduced CPU energy , 1994, OSDI '94.

[19]  Jane W.-S. Liu,et al.  Scheduling real-time applications in an open environment , 1997, Proceedings Real-Time Systems Symposium.

[20]  Marco Spuri,et al.  Scheduling aperiodic tasks in dynamic priority systems , 1996, Real-Time Systems.

[21]  Thomas L. Martin,et al.  Balancing batteries, power, and performance: system issues in cpu speed-setting for mobile computing , 1999 .

[22]  Giorgio C. Buttazzo,et al.  Integrating multimedia applications in hard real-time systems , 1998, Proceedings 19th IEEE Real-Time Systems Symposium (Cat. No.98CB36279).

[23]  Hal Wasserman,et al.  Comparing algorithm for dynamic speed-setting of a low-power CPU , 1995, MobiCom '95.

[24]  Lui Sha,et al.  Capacity sharing for overrun control , 2000, Proceedings 21st IEEE Real-Time Systems Symposium.

[25]  Thomas D. Burd,et al.  Voltage scheduling in the IpARM microprocessor system , 2000, ISLPED'00: Proceedings of the 2000 International Symposium on Low Power Electronics and Design (Cat. No.00TH8514).

[26]  K. Langendoen,et al.  Energy priority scheduling for variable voltage processors , 2001, ISLPED'01: Proceedings of the 2001 International Symposium on Low Power Electronics and Design (IEEE Cat. No.01TH8581).

[27]  Philip Levis,et al.  Policies for dynamic clock scheduling , 2000, OSDI.