The Community for Technology Leaders
Green Image
Issue No. 05 - May (2014 vol. 25)
ISSN: 1045-9219
pp: 1190-1199
Ajoy K. Datta , Department of Computer Science, University of Nevada at Las Vegas, Las Vegas, NV, USA
Rajesh Patel , Department of Computer Science, University of Nevada at Las Vegas, Las Vegas, 89154NV, USA
Power and energy have become increasingly important concerns in the design and implementation of today's multicore/manycore chips. In this paper, we present two priority-based CPU scheduling algorithms, Algorithm Cache Miss Priority CPU Scheduler (${ \mmb {\cal CM}}$-PCS) and Algorithm Context Switch Priority CPU Scheduler ( ${\cal CS}$-PCS), which take advantage of often ignored dynamic performance data, in order to reduce power consumption by over 20 percent with a significant increase in performance. Our algorithms utilize Linux cpusets and cores operating at different fixed frequencies. Many other techniques, including dynamic frequency scaling, can lower a core's frequency during the execution of a non-CPU intensive task, thus lowering performance. Our algorithms match processes to cores better suited to execute those processes in an effort to lower the average completion time of all processes in an entire task, thus improving performance. They also consider a process's cache miss/cache reference ratio, number of context switches and CPU migrations, and system load. Finally, our algorithms use dynamic process priorities as scheduling criteria. We have tested our algorithms using a real AMD Opteron 6134 multicore chip and measured results directly using the “KillAWatt” meter, which samples power periodically during execution. Our results show not only a power (energy/execution time) savings of 39 watts (21.43 percent) and 38 watts (20.88 percent), but also a significant improvement in the performance, performance per watt, and execution time $\cdot$ watt (energy) for a task consisting of 24 concurrently executing benchmarks, when compared to the default Linux scheduler and CPU frequency scaling governor.
CPU migration, Multicore processor, manycore processor, CPU intensive task, global power budget, dynamic process priority, heterogeneous architecture, CPU frequency scaling governor, cpuset, hardware performance counter, dynamic CPU frequency scaling, memory performance saturation, Linux nice value, cache coherence

A. K. Datta and R. Patel, "CPU Scheduling for Power/Energy Management on Multicore Processors Using Cache Miss and Context Switch Data," in IEEE Transactions on Parallel & Distributed Systems, vol. 25, no. 5, pp. 1190-1199, 2014.
172 ms
(Ver 3.3 (11022016))