In head to head benchmark tests of Microsoft Hyper-V compared to VMware Workstation, The Hypervisor test results indicate virtual machine (VM) performance using Hyper-V is below that of VMware Workstation.
Our tests compared the time taken to install various operating systems into VMs hosted by the two hypervisors. Thus our test results focus on the time needed to format virtual disks and copy files onto VM file systems. Our results show VMware Workstation 6 is a faster platform for both Windows and Linux applications, although Hyper-V is almost as fast as VMware Workstation for running Windows Vista.
For our first test we created simple Linux VMs using each virtualisation product, and configured them with two NICs and 128MB of RAM. We timed how long it took to install IPcop version 1.4.20, which is a popular Linux based firewall. We timed the Linux installation tool while it formatted the disk partitions and copied files to the hard disk. This test was largely a test of the virtual hard disk and virtual CD-Rom subsystems offered by the two virtualisation products.
In our tests the VMware VM completed this portion of the installation in 13.2 seconds. The Hyper-V VM required 88 seconds.
For our next text we timed how long it took to install Microsoft Windows Vista SP1 x64 from a DVD. We configured our VMs with 512MB of RAM and timed the main file copying part of the installation process. Hyper-V took 18 minutes and 15 seconds to complete the file copying and expansion part of the installation. In comparison, VMware Workstation required 16 minutes and 40 seconds.
Next, we tested how long was needed to install Windows Vista SP1 x86 from the same DVD. Both virtualisation products were considerably quicker in this test, indicating that less data was being copied to the virtual hard disks. In this test, Hyper-V took 13 minutes and 56 seconds, while VMware Workstation took 13 minutes and 47 seconds.
Finally, we tested the installation process for Windows XP SP2, again from a DVD. In this test Hyper-V took 7 minutes 50 seconds to format the virtual disk and copy files. VMware Workstation 6 took 3 minutes 58 seconds, or almost half the time, to do the same work.
Clearly the performance of both Hyper-V and VMware VMs would be improved had we tested with the respective hypervisor vendor’s performance optimization drivers loaded in the VMs. However, many VMs used in production environments, particularly those running Linux, are either not able to load – or not certified to run – such drivers. This is especially true of VMs running under Hyper-V.
Our analysis of these results is that Hyper-V is a reasonable platform for hosting modern Windows software such as Windows Server 2008 and Windows Vista. However, care is needed when using Hyper-V to host older versions of Windows or Linux software, as the performance of virtual machine disk operations could be a lot less than is possible using alternative virtualisation products.
How We Tested
We tested Hyper-V running on a desktop PC fitted with an Intel Core Quad Q6600 CPU running at 2.4GHz and a single SATA hard disk drive. We compared test results from a PC running Microsoft Vista SP1 x86 and VMware Workstation 6 with results from the same PC running Windows Server 2008 and Hyper-V.
Our tests were conducted without using VMware Tools or the equivalent Microsoft Integration Services to optimise the performance of the VMs. This was because these optimisations could not be loaded into a VM until after the operating system had been installed. We configured our VMs to use IDE hard disks, despite VMware Workstation’s recommendation to use SCSI disks for Linux and Vista. We did this to provide a fair comparison and to simplify testing, as we would have needed to load a SCSI driver into the operating system during installation in order to install Windows using Hyper-V with a SCSI virtual hard disk. We made some VMware Workstation tests using SCSI virtual hard disks and found little difference in the results. We also experimented with VMware Workstation’s “Guest Operating System” parameter, for example by configuring it for both 32-bit and 64-bit versions of Windows Vista, but found this had little effect on our results. This is because the code used to install these operating systems is probably exclusively 32-bit. However, the results presented were obtained with this parameter correctly set for the operating system being tested.