Abstract
We present an energy-efficient, utility accrual, real-time scheduling algorithm called ReUA. ReUA considers an application model where activities are subject to time/utility function time constraints, mutual exclusion constraints on shared non-CPU resources, and statistical performance requirements on individual activity timeliness behavior. The algorithm targets mobile embedded systems where system-level energy consumption is also a major concern. For such a model, we consider the scheduling objectives of (1) satisfying the statistical performance requirements and (2) maximizing the system-level energy efficiency, while respecting resource constraints. Since the problem is NP-hard, ReUA allocates CPU cycles using statistical properties of application cycle demands, and heuristically computes schedules with a polynomial time cost. We analytically establish several timeliness and nontimeliness properties of the algorithm. Further, our simulation experiments illustrate ReUA's effectiveness and superiority.
- Advanced Micro Devices Corporation. 2000. Mobile AMD-K6-2+ Processor Data Sheet. Publication #23446.]]Google Scholar
- Anderson, J. M., Weihl, W. E., Berc, L. M., Dean, J., Ghemawat, S., Henzinger, M. R., Leung, S.-T. A., Sites, R. L., Vandevoorde, M. T., and Waldspurger, C. A. 1997. Continuous profiling: Where have all the cycles gone? In Proceedings of 16th Symposium on Operating Systems Principles. 1--14.]] Google Scholar
- Aydin, H., Melhem, R., Mosse, D., and Mejia-Alvarez, P. 2001. Dynamic and aggressive scheduling techniques for power-aware real-time systems. In Proceedings of IEEE Real-Time Systems Symposium. 95--105.]] Google Scholar
- Baker, T. P. 1991. Stack-based scheduling of real-time processes. Journal of Real-Time Systems 3, 1 (Mar.), 67--99.]] Google Scholar
- Chandrakasan, A., Sheng, S., and Brodersen, R. W. 1992. Low-power CMOS digital design. IEEE Journal of Solid-State Circuits. 27, 473--484.]]Google Scholar
- Chen, K. and Muhlethaler, P. 1996. A scheduling algorithm for tasks described by time value function. Journal of Real-Time Systems 10, 3 (May), 293--312.]] Google Scholar
- Clark, R., Jensen, E. D., Kanevsky, A., Maurer, J., Wallace, P., Wheeler, T., Zhang, Y., Wells, D., Lawrence, T., and Hurley, P. 1999. An adaptive, distributed airborne tracking system. In Proceedings of The IEEE Workshop on Parallel and Distributed Systems. LNCS, vol. 1586. Springer-Verlag, New York. 353--362.]] Google Scholar
- Clark, R. K. 1990. Scheduling dependent real-time activities. Ph.D. thesis, Carnegie Mellon University. CMU-CS-90-155, http://www.real-time.org (last accessed: June 22, 2005).]] Google Scholar
- Dertouzos, M. 1974. Control robotics: The procedural control of physical processes. Information Processing 74.]]Google Scholar
- Flautner, K. and Mudge, T. 2002. Vertigo: Automatic performance-setting for Linux. In Proceedings of 5th Symposium on Operating Systems Design and Implementation.]] Google Scholar
- GlobalSecurity.org. BMC3I Battle Management, Command, Control, Communications and Intelligence. http://www.globalsecurity.org/space/systems/bmc3i.htm/ (last accessed: June 22, 2005).]]Google Scholar
- GlobalSecurity.org. Multi-Platform Radar Technology Insertion Program. http://www.globalsecurity.org/intell/systems/mp-rtip.htm/ (last accessed: June 22, 2005).]]Google Scholar
- Graybill, R. and Melhem, R. 2002. Power aware computing. Kluwer Academic/Plenum Publ. New York.]] Google Scholar
- Gruian, F. 2001. Hard real-time scheduling for low energy using stochastic data and DVS processors. In Proceedings of International Symposium on Lower-Power Electronics and Design.]] Google Scholar
- Grunwald, D., Levis, P., Farkas, K., III, C. M., and Neufeld, M. 2000. Policies for dynamic clock scheduling. In Proceedings of 4th Symposium on Operating Systems Design and Implementation.]] Google Scholar
- Havinga, P. J. M. and Smith, G. J. M. 2000. Design techniques for low-power systems. Journal of Systems Architecture. 46, 1.]] Google Scholar
- Horn, W. 1974. Some simple scheduling algorithms. Naval Research Logistics Quaterly 21, 177--185.]]Google Scholar
- Jensen, E. D. 1992. Asynchronous decentralized real-time computer systems. In Real-Time Computing. NATO Advanced Study Institute. Springer Verlag, New York.]]Google Scholar
- Jensen, E. D., Locke, C. D., and Tokuda, H. 1985. A time-driven scheduling model for real-time systems. In Proceedings of IEEE Real-Time Systems Symposium. 112--122.]]Google Scholar
- Kim, W., Kim, J., and Min, S. L. 2003. Dynamic voltage scaling algorithm for fixed-priority real-time systems using work-demand analysis. In Proceedings of International Symposium on Lower-Power Electronics and Design.]] Google Scholar
- Koren, G. and Shasha, D. 1992. D-Over: An optimal on-line scheduling algorithm for overloaded real-time systems. In Proceedings of IEEE Real-Time Systems Symposium. 290--299.]]Google Scholar
- Li, P. 2004. Utility accrual real-time scheduling: Models and algorithms. Ph.D. thesis, Virginia Tech. http://scholar.lib.vt.edu/theses/available/etd-08092004-230138/ (last accessed: June 22, 2005).]] Google Scholar
- Liu, C. L. and Layland, J. W. 1973. Scheduling algorithms for multiprogramming in a hard real-time environment. Journal of the ACM 20, 1, 46--61.]] Google Scholar
- Locke, C. D. 1986. Best-effort decision making for real-time scheduling. Ph.D. thesis, Carnegie Mellon University. CMU-CS-86-134, http://www.real-time.org (last accessed: June 22, 2005).]] Google Scholar
- Lorch, J. and Smith, A. 2001. Improving dynamic voltage scaling algorithms with PACE. In Proceedings of ACM SIGMETRICS 2001 Conference (Cambridge, MA). 50--61.]] Google Scholar
- Martin, T. 1999. Balancing batteries, power and performance: System issues in cpu speed-setting for mobile computing. Ph.D. thesis, Carnegie Mellon University.]] Google Scholar
- Martin, T. and Siewiorek, D. 2001. Non-ideal battery and main memory effects on CPU speed-setting for low power. IEEE Transactions on VLSI Systems 9, 1 (February), 29--34.]] Google Scholar
- Maynard, D. P., Shipman, S. E., Clark, R. K., Northcutt, J. D., Kegley, R. B., Zimmerman, B. A., and Keleher, P. J. 1988. An example real-time command, control, and battle management application for alpha. Tech. rep., Department of Computer Science, Carnegie Mellon University. December. Archons Project Technical Report 88121.]]Google Scholar
- Pedram, M. 1996. Power minimization in IC design: Principles and applications. In ACM Transactions on Design Automation of Electronics Systems. 1, 1. 3--56.]] Google Scholar
- Pering, T., Burd, T., and Brodersen, R. 2000. Voltage scheduling in the lpARM microprocessor system. In Proceedings of International Symposium on Lower-Power Electronics and Design.]] Google Scholar
- Pillai, P. and Shin, K. G. 2001. Real-time dynamic voltage scaling for low-power embedded operating systems. In Proceedings of the ACM Symposium on Operating Systems Principles. 89--102.]] Google Scholar
- Rusu, C., Melhem, R., and Mosse, D. 2003. Multi-version scheduling in rechargeable energy-aware real-time systems. In Proceedings of IEEE Euromicro Conference on Real-Time Systems.]]Google Scholar
- Sha, L., Rajkumar, R., and Lehoczky, J. P. 1990. Priority inheritance protocols: an approach to real-time synchronization. IEEE Transactions on Computers 39, 9, 1175--1185.]] Google Scholar
- Urgaonkar, B., Shenoy, P., and Roscoe, T. 2002. Resource overbooking and application profiling in shared hosting platforms. In Proceedings of 5th Symposium on Operating Systems Design and Implementation.]] Google Scholar
- Varga, A. OMNeT++ Discrete event simulation system. http://www.omnetpp.org/ (last accessed: June 22, 2005).]]Google Scholar
- Wang, J. and Ravindran, B. 2004. Time-utility function-driven switched ethernet: Packet scheduling algorithm, implementation, and feasibility analysis. IEEE Transactions on Parallel and Distributed Systems 15, 2 (February), 119--133.]] Google Scholar
- Wang, J., Ravindran, B., and Martin, T. 2003. A power aware best-effort real-time task scheduling algorithm. In Proceedings of The IEEE Workshop on Software Technologies for Future Embedded Systems, IEEE International Symposium on Object-Oriented Real-Time Distributed Computing. 21--28.]] Google Scholar
- Weiser, M., Welch, B., Demers, A., and Shenker, S. 1994. Scheduling for reduced CPU energy. In Proceedings of The USENIX Symposium on Operating Systems Design and Implementation. 13--23.]] Google Scholar
- Wu, H., Ravindran, B., Jensen, E. D., and Li, P. 2004a. CPU scheduling for statistically-assured real-time performance and improved energy efficiency. In Proceedings of 2nd IEEE/ACM/IFIP International Conference on Hardware/Software Codesign and System Synthesis (CODES/ISSS). 110--115.]] Google Scholar
- Wu, H., Ravindran, B., Jensen, E. D., and Li, P. 2004b. Energy-efficient, utility accrual scheduling under resource constraints for mobile embedded systems. In Proceedings of Fourth ACM International Conference on Embedded Software (EMSOFT). 64--73.]] Google Scholar
- Yuan, W. and Nahrstedt, K. 2003. Energy-efficient soft real-time CPU scheduling for mobile multimedia systems. In Proceedings of the ACM Symposium on Operating Systems Principles. ACM Press, New York. 149--163.]] Google Scholar
- Zhang, F. and Chanson, S. T. 2004. Blocking-aware processor voltage scheduling for real-time tasks. ACM Transactions on Embedded Computing Systems 3, 2 (May), 307--335.]] Google Scholar
- Zhang, X., Wang, Z., Gloy, N., Chen, J. B., and Smith, M. D. 1997. System support for automated profiling and optimization. In Proceedings of 16th Symposium on Operating Systems Principles. 15--26.]] Google Scholar
- Zhu, D., AbouGhazaleh, N., Mosse, D., and Melhem, R. 2002. Power aware scheduling for AND/OR graphs in multi-processor real-time systems. In Proceedings of The IEEE International Conference on Parallel Processing.]] Google Scholar
Index Terms
Energy-efficient, utility accrual scheduling under resource constraints for mobile embedded systems
Recommendations
Energy-efficient, utility accrual scheduling under resource constraints for mobile embedded systems
EMSOFT '04: Proceedings of the 4th ACM international conference on Embedded softwareWe present an energy-efficient real-time scheduling algorithm called the Resource-constrained Energy-Efficient Utility Accrual Algorithm (or ReUA). ReUA considers an application model where activities are subject to time/utility function-time ...
Utility Accrual Real-Time Scheduling Under the Unimodal Arbitrary Arrival Model with Energy Bounds
In this paper, we consider timeliness and energy optimization in battery-powered, dynamic, embedded real-time systems, which must remain functional during an operation/mission with a bounded energy budget. We consider application activities that are ...
CPU scheduling for statistically-assured real-time performance and improved energy efficiency
CODES+ISSS '04: Proceedings of the 2nd IEEE/ACM/IFIP international conference on Hardware/software codesign and system synthesisWe present a CPU scheduling algorithm, called Energy-efficient Utility Accrual Algorithm (or EUA), for battery-powered, embedded real-time systems. We consider an embedded software application model where repeatedly occurring application activities are ...






Comments