Home | english | Impressum | KIT
Event-Driven Energy Accounting for Dynamic Thermal Management
Autor:

Frank Bellosa, Andreas Weißel, Martin Waitz, and Simon Kellner

Links:
Quelle:

Proceedings of the Workshop on Compilers and Operating Systems for Low Power (COLP'03), New Orleans, LA, September 27, 2003

Datum: 27.09.2003

Abstract:

With increasing clock speed and level of integration in today's processors, memories, and I/O-controllers, power dissipation is becoming a definitive concern of system design. Control-theoretic techniques have proven to manage the heat dissipation and temperature starting from the level of complete systems, so that a thermal emergency will never be reached. However application-, user- or service-specific requirements had to be neglected.

In this work we investigate dynamic thermal management with respect to the demands of individual applications, users or services. We present an event-driven approach to determine on-the-fly the energy consumption on a fine grained level and describe a model to estimate the temperature without the need for measurement. With this power and thermal model - combined with the well-known facility of resource containers - it is possible to throttle the execution of individual tasks according to their energy-specific characteristics and the thermal requirements of the system. In addition to throttling we investigate a modified process scheduler which allots CPU time according to the power contribution of each task to the current temperature level of the processor.

Experiments using a Pentium 4 architecture running a modified Linux show that a given temperature limit for the CPU will not be exceeded while tasks are scheduled according to their energy consumption.

BibTex:

@inproceedings{bellosa03energyaccounting,
  author = {Frank Bellosa and Andreas Weissel and Martin Waitz and Simon Kellner},
  title = {Event-Driven Energy Accounting for Dynamic Thermal Management},
  booktitle = {Proceedings of the Workshop on Compilers and Operating Systems for Low Power (COLP'03)},
  address = {New Orleans, LA},
  month = sep # "~27",
  year = 2003
}