Relative performance of VMWare Player, Workstation, Server and ESX?

5,082

Solution 1

Unless you REALLY need the host client functionality you get with Player/Workstation/Server I'd always suggest going with ESXi - it's that much more functional, stable and performant. Obviously it's dedicated at that point but that's the price you pay.

Solution 2

ESX (i) is what is called a "type 1 hypervisor": a dedicated virtualization operating system running directly on the host hardware, with full access and control to hardware resources; Player/Workstation/Server are "type 2 hypervisors": they are applications running on an underlying operating system (Windows or Linux); they have to go through it to access hardware, and this is the main reason ESX (i) is definitely better; the difference in performances is simply astounding.

That said, if performance is critical, virtualization is clearly not the best option here. The two VMs are going to compete anyway for hardware resources, regardless of the virtualization system you're using (although ESX (i) makes a really better job at managing them); and unless more than two times the resources consumed by each VM are available on the host, they will not be able to run smoothly; this means, if each VM needs 2 cores and 2 GB of memory, the host will need at least 4 cores and 5 GB of memory (there is of course some virtualization overhead) in order to fulfill their requirements. About disk I/O, the best thing you can do is placing the two VMs on different physical disks; not partitions or volumes: you have to actually use different physical disks in order to have them not compete for disk I/O.

Solution 3

As Chopper says, the difference between ESX and VMWare player is stunning (as is, to be fair, the difference between HyperV server and Virtual PC). It's a fundamental change the in way virtualisation is delivered which greatly benefits the guest OSes.

However the only way to know if its fast enough for your needs is to test test test... and as much as I love virtualisation's ability to solve problems, it isn't always the answer to everything. We have a few "performance critical" tasks here that we don't see ourselves migrating to VMs any time soon.

Share:
5,082
Paula
Author by

Paula

I was a Windows programmer (15 years of C++, C#, SQL Server), but I took a leap of faith and now I'm a backend software developer, using Erlang and Elixir, at Twilio.

Updated on September 17, 2022

Comments

  • Paula
    Paula almost 2 years

    We're currently running a couple of continuous build/test agents in VMWare Player. They regularly fail due to timing/speed problems. That is: because there are two VMs on the same box, they contend for (e.g.) disk access and are massively slowed down.

    Would upgrading to VMWare Workstation (or Server or ESXi) improve things, or should I request a physical box for one of the agents instead?

    • John Gardeniers
      John Gardeniers over 13 years
      Given the (relatively) low cost of a decently speced PC, why not request one or two of those for the job and be done with it?
    • Paula
      Paula over 13 years
      I have, but that assumes that they'll be approved. Also, VMs are attractive in that you can just clone a dev image and spin up another one.
  • TomTom
    TomTom over 13 years
    Wont help unless you describe bad. Disc IO is a hardware problem. Get more / faster discs. Software and CPU hardware never will help with a disc io problem.
  • TomTom
    TomTom over 13 years
    Actually the best is replacing the disc with a raid 10 of a couple of very fast discs (or a SSD) on a professional level raid controller.
  • TomTom
    TomTom over 13 years
    No. Really. I use a 4 disc RAID 10 at the moment on a enterprise leel controller and the performance i get out of that is way higher than 2 single discs.
  • Chopper3
    Chopper3 over 13 years
    Couldn't have said it better myself TomTom.
  • Scott Keck-Warren
    Scott Keck-Warren over 13 years
    I agree as well, if you need a quick fix to this problem while you try to get a server we have added additional hard drives (two or three) and distributed the VMs between them when disk I/O was the problem.
  • Massimo
    Massimo over 13 years
    If you're running only 2 VMs, I still think that performance would be even higher with 2 RAID 1 volumes of 2 disks each and a single VM on each of them. But there has always been endless debate on this topic :-)