Abstract
This paper presents GRACE-OS, an energy-efficient soft real-time CPU scheduler for mobile devices that primarily run multimedia applications. The major goal of GRACE-OS is to support application quality of service and save energy. To achieve this goal, GRACE-OS integrates dynamic voltage scaling into soft real-time scheduling and decides how fast to execute applications in addition to when and how long to execute them. GRACE-OS makes such scheduling decisions based on the probability distribution of application cycle demands, and obtains the demand distribution via online profiling and estimation. We have implemented GRACE-OS in the Linux kernel and evaluated it on an HP laptop with a variable-speed CPU and multimedia codecs. Our experimental results show that (1) the demand distribution of the studied codecs is stable or changes smoothly. This stability implies that it is feasible to perform stochastic scheduling and voltage scaling with low overhead; (2) GRACE-OS delivers soft performance guarantees by bounding the deadline miss ratio under application-specific requirements; and (3) GRACE-OS reduces CPU idle time and spends more busy time in lower-power speeds. Our measurement indicates that compared to deterministic scheduling and voltage scaling, GRACE-OS saves energy by 7% to 72% while delivering statistical performance guarantees.
- S. Adve and et al. The Illinois GRACE Project: Global Resource Adaptation through CoopEration. In Proc. of Workshop on Self-Healing, Adaptive and self-MANaged Systems, June 2002.]]Google Scholar
- AMD. Mobile AMD Athlon 4 processor model 6 CPGA data sheet. http://www.amd.com, Nov. 2001.]]Google Scholar
- J. M. Anderson and et~al. Continuous profiling: Where have all the cycles gone? In Proc. of 16th Symposium on Operating Systems Principles, Oct. 1997.]] Google ScholarDigital Library
- M. Aron and P. Druschel. Soft timers: Efficient microsecond software timer support for network processing. In Proc. of 17th Symposium on Operating Systems Principles, Dec. 1999.]] Google ScholarDigital Library
- H. Aydin, R. Melhem, D. Mosse, and P. Alvarez. Dynamic and aggressive scheduling techniques for power-aware real-time systems. In Proc. of 22nd IEEE Real-Time Systems Symposium, Dec. 2001.]] Google ScholarDigital Library
- G. Banga, P. Druschel, and J. Mogul. Resource containers: A new facility for resource management in server systems. In Proc. of 3rd Symp. on Operating System Design and Implementation, Feb. 1999.]] Google ScholarDigital Library
- A. Chandra, M. Adler, P. Goyal, and P. Shenoy. Surplus fair scheduling: A proportional-share CPU scheduling algorithm for symmetric multiprocessors. In Proc. of 4th Symposium on Operating System Design and Implementation, Oct. 2000.]] Google ScholarDigital Library
- A. Chandrakasan, S. Sheng, and R. W. Brodersen. Low-power CMOS digital design. IEEE Journal of Solid-State Circuits, 27:473--484, Apr. 1992.]]Google ScholarCross Ref
- K. Duda and D. Cheriton. Borrowed-virtual-time (BVT) scheduling: Supporting latency-sensitive threads in a general purpose scheduler. In Proc. of 17th Symposium on Operating Systems Principles, Dec. 1999.]] Google ScholarDigital Library
- K. Flautner and T. Mudge. Vertigo: Automatic performance-setting for linux. In Proc. of 5th Symposium on Operating Systems Design and Implementation, Dec. 2002.]] Google ScholarDigital Library
- J. Flinn and M. Satyanarayanan. PowerScope: A tool for proling the energy usage of mobile applications. In Proc. of 2nd IEEE Workshop on Mobile Computing Systems and Applications, Feb. 1999.]] Google ScholarDigital Library
- K. Gardner. Probabilistic analysis and scheduling of critical soft real-time systems. PhD thesis, Depratment of Computer Science, University of Illinois at Urbana-Champaign, 1999.]] Google ScholarDigital Library
- P. Goyal, X. Guo, and H. Vin. A hierarchical CPU scheduler for multimedia operating systems. In Proc. of Symposium on Operating System Design and Implementation, Oct. 1996.]] Google ScholarDigital Library
- F. Gruian. Hard real-time scheduling for low energy using stochastic data and DVS processors. In Proc. of Intl. Symp. on Low-Power Electronics and Design, Aug. 2001.]] Google ScholarDigital Library
- D. Grunwald, P. Levis, K. Farkas, C. Morrey III, and M. Neufeld. Policies for dynamic clock scheduling. In Proc. of 4th Symposium on Operating System Design and Implementation, Oct. 2000.]] Google ScholarDigital Library
- C. Hamann and et~al. Quality-assuring scheduling-using stochastic behavior to improve resource utilization. In Proc. of 22nd IEEE Real-Time Systems Symposium, Dec. 2001.]] Google ScholarDigital Library
- T. Ishihara and H. Yasuura. Voltage scheduling problem for dynamically variable voltage processors. In Proc. of Intl. Symp. on Low-Power Electronics and Design, 1998.]] Google ScholarDigital Library
- K. Jeffay, F. D. Smith, A. Moorthy, and J. Anderson. Proportional share scheduling of operating system services for real-time applications. In Proc. of the 19th IEEE Real-Time Systems Symposium, Dec. 1998.]] Google ScholarDigital Library
- M. Jones, D. Rosu, and M. Rosu. CPU reservations & time constraints: Efficient, predictable scheduling of independent activities. In Proc. of 16th Symposium on Operating Systems Principles, Oct. 1997.]] Google ScholarDigital Library
- S. Krantz, S. Kress, and R. Kress. Jensen's Inequality. Birkhauser, 1999.]]Google Scholar
- KURT. UTIME-- micro-second resolution timers for linux. http://www.ittc.ku.edu/kurt, Mar. 2003.]]Google Scholar
- C. L. Liu and J. W. Layland. Scheduling algorithms for multiprogramming in a hard real-time environment. JACM, 20(1):46--61, Jan. 1973.]] Google ScholarDigital Library
- J. Lorch and A. Smith. Improving dynamic voltage scaling algorithms with PACE. In Proc. of ACM SIGMETRICS 2001 Conference, June 2001.]] Google ScholarDigital Library
- J. Lorch and A. Smith. Operating system modifications for task-based speed and voltage scheduling. In Proc. of the 1st Intl. Conf. on Mobile Systems, Applications, and Services, May 2003.]] Google ScholarDigital Library
- J. Nieh and M. S. Lam. The design, implementation and evaluation of SMART: A scheduler for multimedia applications. In Proc. of 16th Symposium on Operating Systems Principles, Oct. 1997.]] Google ScholarDigital Library
- T. Pering, T.Burd, and R. Brodersen. The simulation and evaluation of dynamic voltage scaling algorithms. In Proc. of Intl. Symposium on Low Power Electronics and Design, June 1998.]] Google ScholarDigital Library
- T. Pering, T.Burd, and R. Brodersen. Voltage scheduling in the lpARM microprocessor system. In Proc. of Intl. Symposium on Low Power Electronics and Design, July 2000.]] Google ScholarDigital Library
- P. Pillai and K. G. Shin. Real-time dynamic voltage scaling for low-power embedded operating systems. In Proc. of 18th Symposium on Operating Systems Principles, Oct. 2001.]] Google ScholarDigital Library
- R. Rajkumar, K. Juvva, A. Molano, and S. Oikawa. Resource kernels: A resource-centric approach to real-time systems. In Proc. of SPIE Multimedia Computing and Networking Conference, Jan. 1998.]]Google Scholar
- T. Simunic and et~al. Dynamic voltage scaling and power management for portable systems. In Proc. of Design Automation Conference, June 2001.]] Google ScholarDigital Library
- A. Sinha and A. Chandrakasan. Dynamic voltage scheduling using adaptive filtering of workload traces. In Proc. of 4th International Conference on VLSI Design, Jan. 2001.]] Google ScholarDigital Library
- B. Urgaonkar, P. Shenoy, and T. Roscoe. Resource overbooking and application profiling in shared hosting platforms. In Proc. of 5th Symp. on Operating Systems Design and Implementation, Dec. 2002.]] Google ScholarDigital Library
- S. Wang, D. Xuan, R. Bettati, and W. Zhao. Differentiated services with statistical real-time guarantees in static-priority scheduling networks. In Proc. of 22nd IEEE Real-Time Systems Symposium, Dec. 2001.]] Google ScholarDigital Library
- M. Weiser, B. Welch, A. Demers, and S. Shenker. Scheduling for reduced CPU energy. In Proc. of Symposium on Operating Systems Design and Implementation, Nov. 1994.]] Google ScholarDigital Library
- W. Yuan and K. Nahrstedt. Integration of dynamic voltage scaling and soft real-time scheduling for open mobile systems. In Proc. of the 12th International Workshop on Network and Operating Systems Support for Digital Audio and Video, May 2002.]] Google ScholarDigital Library
- W. Yuan, K. Nahrstedt, S. Adve, D. Jones, and R. Kravets. Design and evaluation of cross-layer adaptation framework for mobile multimedia systems. In Proc. of SPIE Multimedia Computing and Networking Conference, Jan. 2003.]]Google ScholarCross Ref
- X. Zhang, Z. Wang, N. Gloy, J. Chen, and M. Smith. System support for automated profiling and optimization. In Proc. of Symposium on Operating Systems Principles, Oct. 1997.]] Google ScholarDigital Library
Index Terms
- Energy-efficient soft real-time CPU scheduling for mobile multimedia systems
Recommendations
Energy-efficient soft real-time CPU scheduling for mobile multimedia systems
SOSP '03: Proceedings of the nineteenth ACM symposium on Operating systems principlesThis paper presents GRACE-OS, an energy-efficient soft real-time CPU scheduler for mobile devices that primarily run multimedia applications. The major goal of GRACE-OS is to support application quality of service and save energy. To achieve this goal, ...
Energy-efficient CPU scheduling for multimedia applications
This article presents the design, implementation, and evaluation of EScheduler, an energy-efficient soft real-time CPU scheduler for multimedia applications running on a mobile device. EScheduler seeks to minimize the total energy consumed by the device ...
Comments