Perfctr-Xen: a framework for performance counter virtualization

  • Authors:
  • Ruslan Nikolaev;Godmar Back

  • Affiliations:
  • Virginia Polytechnic Institute, Blacksburg, VA, USA;Virginia Polytechnic Institute, Blacksburg, VA, USA

  • Venue:
  • Proceedings of the 7th ACM SIGPLAN/SIGOPS international conference on Virtual execution environments
  • Year:
  • 2011

Quantified Score

Hi-index 0.00

Visualization

Abstract

Virtualization is a powerful technique used for variety of application domains, including emerging cloud environments that provide access to virtual machines as a service. Because of the interaction of virtual machines with multiple underlying software and hardware layers, the analysis of the performance of applications running in virtualized environments has been difficult. Moreover, performance analysis tools commonly used in native environments were not available in virtualized environments, a gap which our work closes. This paper discusses the challenges of performance monitoring inherent to virtualized environments and introduces a technique to virtualize access to low-level performance counters on a per-thread basis. The technique was implemented in perfctr-xen, a framework for the Xen hypervisor that provides an infrastructure for higher-level profilers. This framework supports both accumulative event counts and interrupt-driven event sampling. It is light-weight, providing direct user mode access to logical counter values. perfctr-xen supports multiple modes of virtualization, including paravirtualization and hardware-assisted virtualization. perfctr-xen applies guest kernel-hypervisor coordination techniques to reduce virtualization overhead. We present experimental results based on microbenchmarks and SPEC CPU2006 macrobenchmarks that show the accuracy and usability of the obtained measurements when compared to native execution.