posted on 2013-06-28, 00:00authored byGiovanni Francesco Del Nero
Nowadays computing systems, from embedded, laptop and desktop to high performance server-class systems, are becoming increasingly powerful and complex. Maximization of perfor- mance has led to increasingly sophisticated processor organizations such as superscalar, out-of-order issue, and Very Long Instruction Word (VLIW). Moreover, technology continues to double the number of transistors per unit area every 1.5-2 years, thus leading to an ever increasing power density. The power dissipated is converted into heat, which reduces components reliability (electro-migration, dielectric breakdown, ...), highly increases leakage currents and affects performance.
Therefore thermal management has become a prominent issue in system design both when considering mobile systems where higher operating temperatures also greatly influence battery duration and when considering plugged-in systems where they also affect energy costs for cooling systems. Primary solutions like thermal packaging, fans, heat sinks and Computer Room Air Conditioning (CRAC) suffer from high cost and complexity, aside from being designed for worst case thermal conditions. This worst-case thermal scenario is highly unlikely, however, and thus such solutions are often an expensive overkill.
For these reasons Dynamic Thermal Management (DTM) techniques, which dynamically provide inexpensive hardware or software responses that reduce power, have recently received significant interest. These techniques focus on processors because they are the most power hungry devices in a computing system and can be used together with traditional solutions to achieve system thermal management.
In this scenario, a dynamic low-cost and flexible temperature-aware scheduling (TAS) strategy for Linux systems is proposed. This work is part of the Autonomic Computing (AC) initiative called ADAPTME and it consists of a thermal aware scheduler targeting average-case thermal management, working both with CFS and BFS schedulers. The proposed approach enhances the Linux Kernel introducing Autonomic Computing capabilities. In particular, it allows the user to set a maximum temperature goal and the system automatically regulates itself in order to keep this requirement. This adaptive thermal behavior is realized through a closed control loop (the Observe Decide Act (ODA) loop) composed of an observation, a decision and an action parts.
The proposed solution dynamically injects idle-cycles, thus switches to low power consuming processor states, for brief intervals according to the temperature readings and idle-cycles previously injected. Through this stop-and-go mechanism it is able to cool down the Central Processing Unit (CPU) keeping safe operating temperatures while impacting as little as possible on execution time.