Virtualizing Performance Counters

  • Benjamin Serebrin
  • Daniel Hecht
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7155)


Virtual machines are becoming commonplace as a stable and flexible platform to run many workloads. As developers continue to move more workloads into virtual environments, they need ways to analyze the performance characteristics of those workloads. However, performance efforts can be hindered because the standard profiling tools like VTune and the Linux Performance Counter Subsystem do not work in most modern hypervisors. These tools rely on CPUs’ hardware performance counters, which are not currently exposed to the guests by most hypervisors. This work discusses the challenges of performance counters due to the trap and emulate method of virtualization and the time sharing of physical CPUs among multiple virtual CPUs. We propose an approach to address these issues to provide useful and intuitive information about guest performance and the relative costs of virtualization overheads.


Virtual Machine Performance Counter Guest Operating System Branch Predictor Core Cycle 
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.
    AMD Bios and Kernel Developer Guide,
  2. 2.
    Bhargava, R., Serebrin, B., Spadini, F., Manne, S.: Accelerating two-dimensional page walks for virtualized systems. ASPLOS XIII, Seattle, WAGoogle Scholar
  3. 3.
  4. 4.
    Du, J., Sehrawat, N., Zwaenepoel, W.: Performance Profiling in a Virtualized Environment. In: Hotcloud 2010, Boston, MA (2010)Google Scholar
  5. 5.
    Du, J., Sehrawat, N., Zwaenepoel, W.: Performance Profiling of Virtual Machines. In: Virtual Execution Environments 2011, Newport Beach, CA (2011)Google Scholar
  6. 6.
    Gleixner, T.: Linux Performance Counter announcement,
  7. 7.
    Hauswirth, M., Sweeney, P., Diwan, A., Hind, M.: Vertical Profiling: Understanding the Behavior of Object-Oriented Applications. In: OOPSLA 2004, Vancover, British Columbia, Canada (2004)Google Scholar
  8. 8.
    Intel Software Developer Manual, vol. 3,
  9. 9.
    Menon, A., Santos, J.R., Turner, Y., Janakiraman, G., Zwaenepoel, W.: Diagnosing Performance Overheads in the Xen Virtual Machine Environment. In: Virtual Execution Environments, Chicago, IL (2005)Google Scholar
  10. 10.
    Mousa, H., Doshi, K., Sherwood, T., Ould-Ahmed-Vall, E.: VrtProf: Vertical Profiling for System Virtualization. Hawaii International Conference on System Sciences, Koloa, HIGoogle Scholar
  11. 11.
    Nikolaev, R., Back, G.: Perfctr-Xen: A Framework for Performance Counter Virtualization. Virtual Execution Environments, Newport Beach, CA (2011)Google Scholar
  12. 12.
    Popek, G., Goldberg, R.: Formal Requirements For Virtualizable Third Generation Architectures. Commun. ACM 17(7), 412–421 (1974)MathSciNetzbMATHCrossRefGoogle Scholar
  13. 13.
  14. 14.
  15. 15.
    VMware: VMkperf for VMware ESX 5.0 (2011)Google Scholar
  16. 16.
    Zhang, Y.: Enhanced perf to collect KVM guest os statistics from host side,

Copyright information

© Springer-Verlag Berlin Heidelberg 2012

Authors and Affiliations

  • Benjamin Serebrin
    • 1
  • Daniel Hecht
    • 1
  1. 1.VMwareUSA

Personalised recommendations