Monday, August 07, 2006

A Comparison of Software and Hardware Techniques for x86 Virtualization

Our (very early) experiences with VT/SVM, contrasted with VMware's classic VMM. Enjoy. Also linked from the academic program page referenced below.


Blogger Anthony Liguori said...

Great paper! I would to see a follow up treating SVM in the same way. The cost of an exit is considerably smaller due to the tagged TLB. I suspect that that could dramatic impact some of the nanobenchmarks that were exit-heavy.

8:38 AM  
Blogger Keith Adams said...


Thanks! This is a common request. At the time we wrote the paper, we had SVM hardware and software, but didn't included measurementes for SVM for the following reasons:

1. As we argue in section 7, SVM and VT are the same design, and implementation improvements (such as AMD's tagged TLB) will only yield so much fruit.

2. SVM hardware wasn't yet commercially available, while we were able to buy a VT chip.

3. The VT monitor had shipped in Workstation 5.5/Player 1.0.

2 and 3 meant that our results were reproducible, which we thought would be nice: you can go down to Fry's, surf over to the Player download page, and see whether or not we're lying for yourself!

For what it's worth, we now have SVM hardware and software. As you'd expect, it's more or less the same story as VT, although some constants are different. SVM is not a uniform win, either. For example, SVM requires that we manually decode CPUID, some in/out instructions, RDTSC/RDTSCP just so that we can figure out the instruction length, while VT gets this somewhat more right.

9:46 AM  

Post a Comment

<< Home