Microvisor: A Runtime Architecture for Thermal Management in Chip Multiprocessors

  • Omer Khan
  • Sandip Kundu
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6760)


In today’s high performance computing environment, power density issues are at the forefront of design constraints. Many platforms integrate a diverse set of processing cores on the same die to fit small form factors. Due to the design limitations of using expensive cooling solutions, such complex chip multiprocessors require an architectural solution to mitigate thermal problems. Many of the current systems deploy voltage/frequency scaling to address thermal emergencies, either within the operating system or in hardware. These techniques have certain limitations in terms of response lag, scalability, cost and being reactive. In this paper, we present an alternative thermal management system to address these limitations, based on virtual machine concept that uses a runtime layer of software (microvisor) to manage the computational demands of threads to the thermal constraints of cores. Our results show that a predictive, targeted, and localized response to thermal events improves performance by an average of 21% over counterpart operating system and hardware control theoretic implementations.


Thermal Sensor Thermal Management Phase Classification Hardware Reconfiguration Chip Multiprocessor 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Advanced Configuration and Power Interface (ACPI),
  2. 2.
    Naffziger, S., et al.: Power and Temperature Control on a 90nm Itanium®-Family Processor. In: Int’l Solid State Circuit Conf. (2005)Google Scholar
  3. 3.
    Revision Guide for AMD NPT Family 0Fh Processors, AMD Publication # 33610 (October 2006)Google Scholar
  4. 4.
    International Roadmap for Semiconductor (ITRS), Document available at
  5. 5.
    Sanchez, H., et al.: Thermal System Management for high performance PowerPC microprocessors. In: COMPCON (1997)Google Scholar
  6. 6.
    Huang, M., et al.: A Framework for Dynamic Energy Efficiency and Temperature Management. IEEE Micro (2000)Google Scholar
  7. 7.
    Borkar, S.: Design Challenges of Technology Scaling. IEEE Micro (July-August 1999)Google Scholar
  8. 8.
    Brooks, D., Martonosi, M.: Dynamic Thermal Management for High-Performance Microprocessors. In: Int’l Symposium on High Performance Computer Arachitecture (2001)Google Scholar
  9. 9.
    Burd, T.D., et al.: Dynamic Voltage Scaled Microprocessor System. IEEE Journal of Solid-State Circuits (November 2000)Google Scholar
  10. 10.
    Skadron, K., et al.: Temperature-aware computer systems: Opportunities and challenges. IEEE Micro (November-December 2003)Google Scholar
  11. 11.
    Rohou, E., Smith, M.: Dynamically managing processor temperature and power. In: Workshop on Feedback Directed Optimization (November 1999)Google Scholar
  12. 12.
    Srinivasan, J., Adve, S.V.: Predictive Dynamic Thermal Management for Multimedia Applications. In: Int’l Conf. on Supercomputing (June 2003)Google Scholar
  13. 13.
    Kursun, E., et al.: Low-Overhead Core Swapping for Thermal Management. In: Workshop on Power-Aware Computing Systems (2004)Google Scholar
  14. 14.
    Powell, M., Gomma, M., Vijaykumar, T.: Heat-and-run: Leveraging SMT and CMP to Manage Power Density through the Operating System. In: Int’l Conf. on Architectural Support for Programming Languages and Operating Systems (2004)Google Scholar
  15. 15.
    Michaud, P., et al.: A study of thread migration in temperature-constrained multi-cores. ACM Transactions on Architecture and Code Optimization (2007)Google Scholar
  16. 16.
    Khan, O., Kundu, S.: Predictive Thermal Management for Chip Multiprocessors using Co-Designed Virtual Machines. In: Int’l Conf. on High Performance Embedded Architectures & Compilers (2009)Google Scholar
  17. 17.
    Khan, O., Kundu, S.: A Framework for Predictive Dynamic Temperature Management of Microprocessor Systems. In: Int’l Conference on Computer Aided Design (2008)Google Scholar
  18. 18.
    Smith, J., Nair, R.: Virtual Machines: Versatile Platforms for Systems and Processes. Morgan Kaufmann Pub., San Francisco (2005)zbMATHGoogle Scholar
  19. 19.
    Heller, L., Farrell, M.: Millicode in an IBM zSeries Processor. IBM Journal of Research and Development, 425–435 (July 2004)Google Scholar
  20. 20.
    Ebcioglu, K., Altman, E.: DAISY: dynamic compilation for 100% architecture compatibility. IBM T. J. Watson Research Center, NY, Research Report RC20538 (1996)Google Scholar
  21. 21.
    Klaiber: The technology behind Crusoe processors. Transmeta White Paper (January 2000)Google Scholar
  22. 22.
    PALcode for Alpha microprocessors system design guide. Digital Equipment Corp. (1996)Google Scholar
  23. 23.
    Renau, J., et al.: SESC Simulator (2005),
  24. 24.
    Brooks, D., et al.: Wattch: A framework for architectural-level power analysis and optimizations. In: Int’l Symposium on Computer Arachitecture (2000)Google Scholar
  25. 25.
    Shivakumar, P., Jouppi, N.P.: CACTI 3.0: An integrated cache timing, power, and area model. In: WRL, Compaq (2001)Google Scholar
  26. 26.
    Skadron, K., et al.: HotSpot: Techniques for Modeling Thermal Effects at the Processor-Architecture Level. In: THERMINIC (2002)Google Scholar
  27. 27.
    Joseph, D., Grunwald, D.: Prefetching using markov predictors. In: Int’l Symposium on Computer Architecture (1997)Google Scholar
  28. 28.
    Sherwood, T., et al.: Phase Tracking and Prediction. In: Int’l Symposium on Computer Architecture (2003)Google Scholar
  29. 29.
    Denning, P.: The Working Set Model for Program Behavior. Communications of ACM 11(5), 323–333 (1968)MathSciNetCrossRefzbMATHGoogle Scholar
  30. 30.
    Sherwood, T., Calder, B.: Time varying behavior of programs. Technical Report UCSD-CS99-630 (August 1999)Google Scholar
  31. 31.
    Barnes, R.D., et al.: Vacuum packing: Extracting hardware-detected program phases for post-link optimization. IEEE Micro (December 2002)Google Scholar
  32. 32.
    Sherwood, T., et al.: Automatically characterizing large scale program behavior. In: Int’l Conf. on Architectural Support for Programming Languages and Operating Systems (2002)Google Scholar
  33. 33.
    Madison, W., Batson, A.: Characteristics of program localities. Communications of ACM 19, 285–294 (1997)CrossRefzbMATHGoogle Scholar
  34. 34.
    Dhodapakar, A., Smith, J.E.: Managing multi-configuration hardware via dynamic working set analysis. In: Int’l Symposium on Computer Architecture (2002)Google Scholar
  35. 35.
    Isci, C., Buyuktosuniglu, A., Martonosi, M.: Long-Term Workload Phases: Duration Prediction and Applications to DVFS. IEEE Micro (Sepetember-October 2005)Google Scholar
  36. 36.
    Lau, J., et al.: Transition phase classification and prediction. In: Int’l Symp on High Performance Computer Architecture (2005)Google Scholar
  37. 37.
    Dhodapakar, A., Smith, J.E.: Comparing program phase detection techniques. In: Int’l Symp. on Microarchitecture (2003)Google Scholar
  38. 38.
    Ponomarev, D., Kucuk, G., Ghose, K.: Dynamic Resizing of Superscalar Datapath Components for Energy Efficiency. IEEE Transactions on Computers 55(2), 199–213 (2006)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2011

Authors and Affiliations

  • Omer Khan
    • 1
  • Sandip Kundu
    • 2
  1. 1.University of MassachusettsLowellUSA
  2. 2.University of MassachusettsAmherstUSA

Personalised recommendations