Friday, June 22, 2007

Vista + Virtualization = Poor Performance

Everyone knows by now that Vista is slower than Windows XP. In fact, my own testing shows it to be roughly twice as slow on the same hardware (see our upcoming Test Center study for more details). That's because Vista is a far more complex operating system, with many additional features and background services that simply don't exist under XP.

What many users don't know, however, is that this gap widens even further under virtualization. Fire-up Vista under VMware or Virtual PC and you'll find that the delta is more like 3x - i.e. tasks take over three times as long to complete under virtualized Vista as they do under virtualized XP.

Let that preceding statement sink in for a minute. In real world terms it means that applications are taking as much as a 50% greater performance hit from being virtualized than would be expected given the aforementioned 2x delta in a native, non-virtualized comparison. As a veteran IT professional, I would expect to take a hit moving to Vista - just not one that's so out of whack with the established norms.

Clearly, there's something going on here that makes Vista particularly difficult to virtualize. I have some theories, however, at this point I can only go on what I've observed. And that is:

1. When testing Vista on a Dell OptiPlex 745 with 4GB of RAM, the performance delta - as measured by the OfficeBench test script - is roughly 2x. The script took twice as long to complete under the Vista/Office 2007 combination as it did under Windows XP/Office 2003.

2. When repeating these tests under VMware Workstation 6.0 and Virtual PC 2007, running on two different hardware test beds (the aforementioned OptiPlex and an XPS M1710 laptop), the script took 3x longer under Vista.

3. All of the tests were conducted using OfficeBench, which is part of the Clarity Studio test framework that is freely available via the exo.performance.network web site (www.xpnet.com).
For the record, I was skeptical of the original results, so much so that I re-ran the VMware scenarios multiple times and then confirmed them against a different installation running under Virtual PC 2007. I also presented my findings to both VMware and Microsoft, but neither could explain the phenomena I observed.

Bottom Line: Vista is significantly slower under virtualization than it should be, and I'll be damned if I know why.

Anyone have an idea what might be going on here? Anyone? Bueller? B-u-e-l-l-e-r?

3 comments:

HBX said...

I'm running vmware and a beta version of hypervisor, and virtualbox on 4 of my 25 home networked vista computers all x64 ultimate and all the same machines....amd x2 5000+ 4gigs of ram and a radeon 1600 card...all of which run virtualization fine....seems you need to get off the craptastic bag on microsoft wagon and get over yourself....and stop SPREADING FUD!!!!

rick said...

j ai windows xp pro et j ai installer windows vista familiale primium 64bits sur un autre disque dur 250g j ai un processeur athlon 64 6000+ 3 gig de memoire et carte graphique nvidea ge force 7900gt/gto.j ai tester vista et j ai constater qu il est definitivement plus lent que windows xp.les pilottes pour le 64 bits sont encore dur a trouver et les logiciel sont aussi tres dure a trouver car ils sont pas compatible avec windows vista 64bits.Pour l instant je croie que windows xp est un bijoux a comparer avec vista.Windows c est tirer dans le pied avec ce nouvel os incompatible et tres lent.Il me fait penser a windows ME.Bravo windows, a part les beaux gadgets et couleurs emprunter a un autre OS qui gruge la vitesse du processeur ca vaut pas grand chose.c est mon opignion.

Mostly Harmless said...

Though i am interested in the possibilities of virtualization your comparision is not apples for apples.

It's not even windows for windows.

The slowness I'd expect, but where the numbers are important are on how the server preforms or handles the virtualization. Those numbers are ones that allow for informed decisions on which hardware should be used for suitable virtualizations.