COLLOQUIUM Computer Science Department, Boston University A Comparison of Software and Hardware Techniques for x86 Virtualization Dr. Ole Agesen VMware Inc. Date: Wednesday, September 27 Time: 11:00am Place: Room MCS 135, 111 Cummington Street (for directions, see www.cs.bu.edu/colloquium) Abstract: Until recently, the x86 architecture has not permitted classical trap-and-emulate virtualization. Virtual Machine Monitors for x86, such as Vmware(R) Workstation and Virtual PC, have instead used binary translation of the guest kernel code. However, both Intel and AMD have now introduced architectural extensions to support classical virtualization. We compare an existing software VMM with a new VMM designed for the emerging hardware support. Surprisingly, the hardware VMM often suffers lower performance than the pure software VMM. To determine why, we study architecture-level events such as page table updates, context switches and I/O, and find their costs vastly different among native, software VMM and hardware VMM execution. We find that the hardware support fails to provide an unambiguous performance advantage for two primary reasons: first, it offers no support for MMU virtualization; second, it fails to co-exist with existing software techniques for MMU virtualization. We look ahead to emerging techniques for addressing this MMU virtualization problem in the context of hardware-assisted virtualization. [Joint work with Keith Adams, based on a paper to appear at ASPLOS 2006] Short Biography: Ole Agesen is a principal engineer and the technical lead in the monitor group at VMware. He has helped design and implement VMware's Virtual SMP, the first multiprocessor capable x86 VMM. More recently he worked on the design and implementation of VMware's x86-64 VMM. Prior to joining VMware, he was the technical lead for Sun Labs on the ExactVM, the Java VM for Solaris 8. Ole received his Ph.D. in computer science from Stanford University. Host: Azer Bestavros