Execution replay of multiprocessor virtual machines

  • Authors:
  • George W. Dunlap;Dominic G. Lucchetti;Michael A. Fetterman;Peter M. Chen

  • Affiliations:
  • University of Michigan, Ann Arbor, MI;University of Michigan, Ann Arbor, MI;University of Cambridge, Cambridge, United Kingdom;University of Michigan, Ann Arbor, MI

  • Venue:
  • Proceedings of the fourth ACM SIGPLAN/SIGOPS international conference on Virtual execution environments
  • Year:
  • 2008

Quantified Score

Hi-index 0.02

Visualization

Abstract

Execution replay of virtual machines is a technique which has many important applications, including debugging, fault-tolerance, and security. Execution replay for single processor virtual machines is well-understood, and available commercially. With the advancement of multi-core architectures, however, multiprocessor virtual machines are becoming more important. Our system, SMP-ReVirt, is the first system to log and replay a multiprocessor virtual machine on commodity hardware. We use hardware page protection to detect and accurately replay sharing between virtual cpus of a multi-cpu virtual machine, allowing us to replay the entire operating system and all applications. We have tested our system on a variety of workloads, and find that although sharing under SMP-ReVirt is expensive, for many workloads and applications, including debugging, the overhead is acceptable.