  The need to develop systems that exploit multi and many-core architectures to
reduce wasteful heat generation is of utmost importance in compute-intensive
applications. We propose an energy-conscious approach to multicore scheduling
known as non-preemptive dynamic window (NPDW) scheduling that achieves
effective load and temperature balancing over chip multiprocessors. NPDW
utilizes the concept of dynamic time windows to accumulate tasks and find an
optimal stable matching between accumulated tasks and available processor cores
using a modified Gale-Shapely algorithm. The metrics of window and matching
performance are defined to create a dynamic window heuristic to determine the
next time window size based on the current and previous window sizes. Based on
derived formulation and experimental results, we show that our NPDW scheduler
is able to distribute the computational and thermal load throughout the
processors in a multicore environment better than baseline schedulers. We
believe that within multicore compute applications requiring temperature and
energy-conscious system design, our scheduler may be employed to effectively
disperse system load and prevent excess core heating.
