skip to main content
article

Energy-efficient soft real-time CPU scheduling for mobile multimedia systems

Published:19 October 2003Publication History
Skip Abstract Section

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.

References

  1. 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 ScholarGoogle Scholar
  2. AMD. Mobile AMD Athlon 4 processor model 6 CPGA data sheet. http://www.amd.com, Nov. 2001.]]Google ScholarGoogle Scholar
  3. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  4. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  5. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  6. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  7. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  8. 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 ScholarGoogle ScholarCross RefCross Ref
  9. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  10. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  11. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  12. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  13. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  14. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  15. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  16. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  17. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  18. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  19. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  20. S. Krantz, S. Kress, and R. Kress. Jensen's Inequality. Birkhauser, 1999.]]Google ScholarGoogle Scholar
  21. KURT. UTIME-- micro-second resolution timers for linux. http://www.ittc.ku.edu/kurt, Mar. 2003.]]Google ScholarGoogle Scholar
  22. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  23. J. Lorch and A. Smith. Improving dynamic voltage scaling algorithms with PACE. In Proc. of ACM SIGMETRICS 2001 Conference, June 2001.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  25. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  26. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  27. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  28. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  29. 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 ScholarGoogle Scholar
  30. T. Simunic and et~al. Dynamic voltage scaling and power management for portable systems. In Proc. of Design Automation Conference, June 2001.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  32. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  33. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  34. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  35. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  36. 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 ScholarGoogle ScholarCross RefCross Ref
  37. 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 ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Energy-efficient soft real-time CPU scheduling for mobile multimedia systems

        Recommendations

        Comments

        Login options

        Check if you have access through your login credentials or your institution to get full access on this article.

        Sign in

        Full Access

        • Published in

          cover image ACM SIGOPS Operating Systems Review
          ACM SIGOPS Operating Systems Review  Volume 37, Issue 5
          SOSP '03
          December 2003
          329 pages
          ISSN:0163-5980
          DOI:10.1145/1165389
          Issue’s Table of Contents
          • cover image ACM Conferences
            SOSP '03: Proceedings of the nineteenth ACM symposium on Operating systems principles
            October 2003
            338 pages
            ISBN:1581137575
            DOI:10.1145/945445

          Copyright © 2003 ACM

          Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

          Publisher

          Association for Computing Machinery

          New York, NY, United States

          Publication History

          • Published: 19 October 2003

          Check for updates

          Qualifiers

          • article

        PDF Format

        View or Download as a PDF file.

        PDF

        eReader

        View online with eReader.

        eReader