Algorithms for Temperature-Aware Task Scheduling in Microprocessor Systems
We study scheduling problems motivated by recently developed techniques for microprocessor thermal management at the operating systems level. The general scenario can be described as follows. The microprocessor temperature is controlled by the hardware thermal management system that continuously senses the chip temperature and automatically reduces the processor’s speed as soon as the thermal threshold is exceeded. Some tasks are more CPU-intensive than other and thus generate more heat during execution. The cooling system operates non-stop, reducing (at an exponential rate) the deviation of the processor’s temperature from the ambient temperature. As a result, the processor’s temperature, and thus the performance as well, depends on the order of the task execution. Given a variety of possible underlying architectures, models for cooling and for hardware thermal management, as well as types of tasks, this gives rise to a plethora of interesting and never studied scheduling problems.
We focus on scheduling real-time jobs in a simplified model for cooling and thermal management. A collection of unit-length jobs is given, each job specified by its release time, deadline and heat contribution. If, at some time step, the temperature of the system is t and the processor executes a job with heat contribution h, then the temperature at the next step is (t + h)/2. The temperature cannot exceed the given thermal threshold τ. The objective is to maximize the throughput, that is, the number of tasks that meet their deadlines. We prove that in the offline case computing the optimum schedule is NP-hard, even if all jobs are released at the same time. In the online case, we show a 2-competitive deterministic algorithm and a matching lower bound.
KeywordsSchedule Problem Time Slot Competitive Ratio Online Algorithm Thermal Management
Unable to display preview. Download preview PDF.
- 1.Bellosa, F., Weissel, A., Waitz, M., Kellner, S.: Event-driven energy accounting for dynamic thermal management. In: Workshop on Compilers and Operating Systems for Low Power (2003)Google Scholar
- 2.Choi, J., Cher, C.-Y., Franke, H., Hamann, H., Weger, A., Bose, P.: Thermal-aware task scheduling at the system software level. In: International Symposium on Low Power Electronics and Design, pp. 213–218 (2007)Google Scholar
- 5.Martonosi, M., Donald, J.: Techniques for multicore thermal management: Classification and new exploration. In: Proceedings of the International Symposium on Computer Architecture, pp. 78–88 (2006)Google Scholar
- 6.Kumar, A., Shang, L., Peh, L.-S., Jha, N.K.: HybDTM: a coordinated hardware-software approach for dynamic thermal management. In: DAC 2006: Proceedings of the 43rd Annual Conference on Design Automation, pp. 548–553 (2006)Google Scholar
- 7.Kursun, E., Cher, C.-Y., Buyuktosunoglu, A., Bose, P.: Investigating the effects of task scheduling on thermal behavior. In: The 3rd Workshop on Temperature-Aware Computer Systems (2006)Google Scholar
- 9.Moore, J., Chase, J., Ranganathan, P., Sharma, R.: Making scheduling ”cool”: temperature-aware workload placement in data centers. In: ATEC 2005: Proceedings of the USENIX Annual Technical Conference 2005 on USENIX Annual Technical Conference, pp. 5–5 (2005)Google Scholar
- 10.Yang, J., Zhou, X., Chrobak, M., Zhang, Y.: Dynamic thermal management through task scheduling. In: IEEE International Symposium on Performance Analysis of Systems and Software (to appear, 2008)Google Scholar