Scheduling for Multi-core Processor under Process and Temperature Variation
Zheng Zhou, Junjun Gu, Gang Qu · 2012
Chip temperature has become an important constraint for achieving high performance on multi-core processors with the popularity of dynamic thermal management techniques such as throttling that slow down the CPU speed. Meanwhile, the within-die process variation creates large discrepancy of maximum operating frequency and leakage power among different cores across the chip. In this paper, we incorporate both temperature and process variations into the scheduling problem on multi-core processor for throughput maximization. In particular, we study how to complete a large number of threads with the shortest time, without violating a given maximum temperature constraint, on the multi-core processor where each core may have different frequency and leakage. We develop speed selection and thread assignment schedulers based on the notion of core's steady state temperature. Simulation results show that our approach is promising to exploit the process and temperature variation for potential performance improvement on multi-core processor. For a 16-core system, when the fully parallelized program's switching activity is less than 0.4 or the problem execution time is less than 6 seconds, we are able to achieve 31% speed-up over the system that uses the slowest core's speed as the frequency, when the switching activity is larger than 0.5 and half of the program can be parallelized our scheduler can reduce the total processing time by 4.3%.