Virtual Machine Showdown – VMWare vs VirtualBox


Let’s face it, not everyone wants to install a second operating system on their hard disk.  Dual booting between Linux and Windows is a tremendous pain in the butt. This is why the great computing diety invented Virtual Machines.Virtual Machines are programs that emulate a computer, It allows you to run an operating system inside of your current operating system.  If you were so inclined you could even run an operating system inside of an operating system which is inside of an operating system, but then you’re getting into some serious Leonardo DiCaprio Inception bullshit and no one really wants that.

I spent the last day or so testing out both VirtualBox, which is new to me, and VMWare Player, a free version of VMWare, the program I’ve been using for many years. and the results are interesting.

I did a default installation of Linux Mint, Both with 10GB Drives, 2GB RAM, and 2 CPUs from my 4-core Intel i7 920.

I did my first installation on VirtualBox ( http://www.virtualbox.org/ ) and it was surprisingly easy.  I selected a Debain x86_64 based system and installed off the x86_64 ISO DVD image I downloaded from http://www.linuxmint.com. I only ran into one minor glitch in the beginning where I was unable to modify the Virtual Server hardware settings after I initially created the new Virtual Server. This was fixed by closing and re-opening VirtualBox.  From initial system boot to the final reboot installation of Linux Mint under VirtualBox took 11 minutes.

Virtual Machines also have “tools” that need to be installed on the guest operating system. VirtualBox makes this very simple, you go to “Devices->Install Guest Additions…” and VirtualBox forces the operating system to mount an ISO image with the tools required.  It includes an autorun script on the ISO so they install automatically. Overall this was probably the least painful Linux installation I’ve ever done. VirtualBox also has a really useful walkthrough when creating a virtual machine that’s good for relative newbies.  I still suggest you at least browse the documentation though!

The next installation was done with VMWare. VMWare is very similar to VirtualBox, but a little more difficult to use. Even with that though, it’s a far more mature product and that showed in the benchmarks I did.  Unfortunately the interface is lacking. From initial boot to final reboot the installation on VMWare took only 7 minutes. There were a few problems, though…

First, unlike with VirtualBox, sound didn’t work right away. That seemed to clear itself up with a reboot, though.  I have had issues with sound and VMWare in the past, but it’s never been a big concern to me. Regardless, it cleared itself up.

The “VMWare Tools” package was a bit more difficult to install.  VMWare, like VirtualBox mounted an ISO for me on Linux but there was no autorun, it was just a tarball (tar.gz) on a CD.  You have to copy the tarball to your home directory, uncompress it, then run the install.sh via a terminal. You also have to answer a bunch of questions about locations and what you want to install from it.

So, Interface-wise, I really prefer VirtualBox. It just seemed easier to use and manage over VMWare Player.

However….

When it comes down to raw benchmarks, VMWare seems to have it in the bag. I didn’t do any graphical benchmarks, but instead tested some more quantitative things using phoronix test suite, CPU, memory & disk access.

The comparison between the two systems can be found here: http://openbenchmarking.org/result/1109086-DAIT-MINTVMW79,1109082-DAIT-VIRTUAL59
(I’ve been having some issues with Chrome crashing on that site, If you do as well, just refresh it until it pops up. It’ll work, I promise)

Both machines had the same settings. 2GB RAM, 2 CPUs with VT-x enabled (Intel’s Virtual machine technology) and 10GB drives. In nearly all categories VMWare beat VirtualBox. Some categories VirtualBox was just crushed (like the Apache connections test) but most were very close  The only tests in which VirtualBox won were  Encryption (GnuPG) and image conversion (dcraw), both CPU-based.

So, in the end if performance is what you need out of your Virtual Machine, VMWare is probably the way to go.  Honestly though, if you’re in it for performance you shouldn’t be using a virtual machine anyway, you should just be dual booting then.

I’m personally going to play around with VirtualBox for awhile. It’s great for a testing environment and as long as you make snapshots of your virtual machine before you do anything drastic you can’t screw things up.  It’s the perfect system for those who want to test Linux without giving up their Windows installation.