VMWare performance for a build server – awful or wrong tests

build-serverhyper-vperformancevmware-esxivmware-workstation

We are looking into virtualizing our C++ Build server(s).

The main reason being that our current toolchain that we use in addition to the build itself in Visual Studio only runs properly on Windows XP (or 2003Server), and the secondary reason being administrative ease (just clone an image and be ready to run on a different HW.

In the end, the setup would/should most probably be one VM per hardware box, because sharing hardware just doesn't make sense for a C++ build, because it will max out CPU and disk anyway.

A colleague has done some preliminary tests on his developer workstation, and they're just horrible:

He measured the following build times for a full build of our Visual C++ 8 (Visual Studio 2005) solution:

  • Desktop/Native with Windows 7 : ~16 min
  • Vmware Workstation with virtual disk, guest is Windows XP : ~1h21min (500% !!!)
  • Vmware WS with direct access to a dedicated physical disk and limited to 4 cores : ~42min (260% !!)

With these timings, we certainly won't go virtual!

We're now asking ourselves whether we made any wrong assumptions with our measurements.

  • Did we mess up any settings to get such horrible slowdown for the C++ build?
  • Should we have tested ESX(i)(?) instead of Workstation?
  • Should we expect anything else from MS Hyper-V? (Because our IT would prefer that.)

Related questions that did not really fully help:

Best Answer

Did we mess up any settings to get such horrible slowdown for the C++ build?

Probably not, VMWare Workstation wasn't the right tool for the job.

Should we have tested ESX(i)(?) instead of Workstation?

Yes, it'll be better than Workstation, still slower than bare-metal but much better.

Should we expect anything else from MS Hyper-V? (Because our IT would prefer that.)

If you want, performance is broadly comparable to ESXi, some things are quicker, some slower - feel free to give it a try.