James O'Neill's blog

Windows Platform, Virtualization and PowerShell with a little Photography for good measure.

Expensive Hypervisors - a bad idea even if you can afford them

Expensive Hypervisors - a bad idea even if you can afford them

  • Comments 28
  • Likes

There's a saying in politics People will fall more easily for a big lie than for a small one*. I think someone at VMware has picked this up because they're trying a really big lie.
VMWare doesn't need memory.

Or to quote the post more precisely: VMware Infrastructure's exclusive ability to overcommit memory gives it an advantage in cost per VM the others can't match.**

They were able to start 40 instances of Windows XP to achieve the 40 VMs, with 512MB of memory on a machine with only 4GB of RAM - a 5 times over commitment ratio.  Of course they didn't actually run anything in them, because if you and I fired up Outlook, and IE (with our own mail boxes and choice of pages)  you open word and I open PowerPoint very few memory pages will be sharable (I've got 47 pages open in IE right now, and it's using over 300MB of RAM, almost all for data). That means a lot of paging will have to happen in the virtualization stack. Brace yourself for really poor performance.

When I read they were using Windows 2000 in the server test I got suspicious, why use an OS which is out of support ? to get better results of course. (As I understand it they don't support Windows Server 2008 yet). To get as much page overlap as possible they ran identical OS, and application on all the VMs, and gave them only a little memory - 512MB for a server is pretty meager. That's important because it ensures memory is occupied by OS and programs  rather than data. Programs will have a lot of sharable pages of memory: data and caches won't.  Suppose they had done the same over commitment with 1.5GB machines and got 4  on their system to 2 on Microsoft Virtualization.  Spare memory will get used as a cache and this will have almost no sharable pages. Data is in from disk to fill memory which isn't there and has to be paged out in the Virtualization stack - that's two sets of disk I/O for nothing.

The writer then cooks the figures: a $6000 for a  2-way server with 4GB of RAM ? I went onto Dell's web site, and got a quote for 2xDual Core Processors, 16GB of RAM and 2x500GB drives in an SC1435 for under £2,000. Given that the UK prices for hardware are always higher than US prices I'm very dubious of that server price. But let's allow that. According to the VMware post their software costs an extra $5,750 (note that's without support). Again I'm working from the memory upgrade prices on Dells web site, an upgrade from 4 to  32 GB upgrade adds £2,720 to the price. At today's Exchange rate, and ignoring the cheaper prices in the US, that's $5,440. So according to VMware a $17,000 system based on their software would have 4GB of ram and run 14VMs. On 4GB the system would run 7 VMs on Microsoft software. But the same money using Microsoft Software would buy 32GB of RAM, the extra 28GB which allows you to run 56 more VMs. That's 63 VMs on $17,000 of system with Microsoft ~ that $270 per VM for Microsoft, against $1268 for per VM for VMware. And with physical RAM for every byte the VMs see, the Microsoft system will perform better.
(To save smarter readers from pointing it out, a $6,000 server might run out of steam between the 7 VMs initially supported, and 63 VMs. The VMware work assumed there would enough CPU, DISK and network resource and the system would be RAM limited. If 14 VMs is where CPU becomes a limitation then we'd be looking at a 4GB upgrade costing £260 /$500, so the Microsoft system would come out about $5,250 cheaper for the same VMs - that's about $375 per VM.)

That's the argument ? Over $5000 of VMWare software is a good investment because it saves $500  on RAM ?

Further Cooking the figures. If you have a Microsoft support contract Microsoft Virtualization Software is covered. One of my colleagues tells me that VM platinum support for 3 years, would add $3666 to the total cost. I haven't checked this numbers but divided over 14VMs that's $261 per VM for VMware support... yes you read the numbers correctly support for VMware costs nearly as much per VM as the hardware, software and for the Microsoft solution. That's before you allow for training, maintaining a separate management infrastructure for the virtual world, and so on.

If someone can show me a customer who is running, in production, a VMware VI3 Enterprise system with a 2:1 memory overcommit ratio on all the VMs, where spending the cost of VMware on RAM wouldn't remove the need to use overcommitment then I'll give... lets say $270 to their choice of charity. ***

Update. Someone asked me to remove a term which is OK in British usage, but tends to offend other English speakers.

* Foot note 1. Yes I know who wrote that, and I'm not going to suggest that VMware have been reading him. Like me, someone there might collect books of quotes and aphorisms.

**Footnote 2. As one of the commenters to the post points out VMware's published recommendation is  "Make sure the host has more memory than the total amount of memory that will be used by ESX plus the sum of the working
set sizes that will be used by all the virtual machines."
I.e. Don't use this feature, if you want decent performance.

*** One offer only. Void where prohibited. Over 18s only. My cause drowsiness; if affected to not operate virtual machinery. etc.

  • So I take it that Microsoft won't be adding this feature :)

  • Today's post on Edge is an interview I did recently with Michael Niehaus and Jeremy Chapman regarding

  • With due respect. You might be missing the bigger picture here.  I have not had very good luck with my early access of 2008...  Production ready??? Insane thought at best.

    We have many production VM's with high level of uptime and great performance  DRS, HA and Vmotion work as advertised.

    Live migration is better termed planned outage while VMotion is flawless.  

    and BTW my Vista migration is really going well, thanks for asking...

    can't wait for 2008 migrations. What else can we freaking break.  

    Interesting that some people think that VMware is the 'only' vendor that puts marketing spin on things. Perhaps the only vendor I have seen that delivers on what they promise.  

  • Wake up James. Just ask some Windows customers and they will tell you that they are doing more than 2:1 overcommit using ESX. Don't bitch about your competitor's product just because you don't have a shipping hypervisor yet (and it will have features when it ships, like "shipping is a feature too")

  • >Over $5000 of VMWare software is a good

    >investment because it saves $500  on RAM ?

    It actually is a good investment.

  • @ Pmunro. We had it in the Alphas and if the market demands it we'll put it back in. It's a really, really bad idea to use it (VMwares own documents say as much).

    @ S Bevans. The Beta of Hyper-V is a beta, and not production ready. Actually the beta works pretty well until you put under stress like you would in production :-)  Where did I say VMWare was unique in putting a marketing spin on things. When we say things that don't stack up people take us to task on it. I think it's perfectly reasonable hold other people to the same standard.

    @ "VM Ware customer". Drop me a mail with a customer name who's doing this, where $5000 of RAM wouldn't solve the problem, and the name of your chosen charity. VMWare has a very strong market position, and with VMotion they have a feature we won't have until the next generation of hyper-V. There's a difference between bitching about a competitor because they have a lead on us, and shooting down illogical statements that they make. I try not to do the former and will do the latter as and when required.

    @George. Do expand... for some customers VMWare is a good investment. But NOT because the ability to save a small about of money on RAM. The number of customers who think that it is a good investment will decline over time :-)

  • Are you running a virtual bullshit detector?  I had mine running on VMware but it was a real memory hog...

  • Is it true that Hyper-V only handles six running VMs?

  • http://bink.nu/news/hyper-v-r2.aspx

    Bob seems to think the feature is a good idea.

    We talked about Vmware ESX and its features like shared memory between VMs, "we definitely need to put that in our product" later he said it will be in the next release. Like hot add memory, disk and nic's will be and Live migration of course, which didn't make it in this release.

  • @ "Me" Hyper-V handles running as many VMs as you've got memory (disk/CPU/Network for).

    That's why this test is completely bogus, artificially constrain one resource [memory] and show that a piece of software gets round that constraint. However the cost of removing the constraint via software is 10 times that of removing it by hardware.

    I think the product group are aiming for better numbers than virtual server and we've shown that in public with *hundreds* of VMs on it.


    Well, VMware's own perf guides say it's a bad idea.

    Do you want to be in the support call with an app vendor who has taken steps to prevent critical bits of code being paged to disk by the OS only to have those self same bits paged out by the virtualization stack ?

    (actually that should be another post in its own right).

    Give some thought to what apps do when they see spare memory - they USE it. So you're reading stuff from disk to cache it, only to have the virtualization stack page it back out again.

    There are exceptions - for example they only way to get a training lab going is to over commit a little.  

    If BobMu says we have to have it in the product is that because it's expected or because it would be a good idea for customers to use it ...

  • I've got a wide variety of VM's running in ESX.  They differ by OS, patch levels, applications running.  I still see the benefit of memory overcommitment, despite these differences.

    Also, with regards to having to purchase the Enterprise version to do all of this, if you aren't using the advanced features (which Microsoft doesn't have yet), then the cost does drop by $2000 to $3750.  And now that the 8GB limit has been removed from the Foundation Edition (formerly Starter Edition), the price drops again to $1000.  That being said, the $$$ that you say VMware will cost is very misleading.

    I look forward to when Microsoft's offering is as capable.  

    That's when it will really get interesting.

  • I'm only quoting the numbers that were on the blog post. But even if you use $1000 for the cost of VMware that's still an 8GB upgrade for the Microsoft system, and the numbers in the post still don't hold water.

    It's always dangerous to try to match two vendors products too closely, but with Hyper-V at $28 and having a better management story to offset the lack of a "v-motion" alike, the number of good reasons to buy VMware will shrink. They won't all vanish with the first version.

  • It's quite amusing to see the VMware blogger ( Citrix's blog names him as Eric Horschmann) has come back

  • In the comments an earlier post , "PMunro" raised an interesting point, and I mentioned it

  • >Over $5000 of VMWare software is a good

    >investment because it saves $500  on RAM ?

    Your math is off.  If your virtual machines are bound by memory and not by CPU, than you are saving much more.  There is a good chance you can reduce the entire size of your farm based on memory over commitment.  Now you are saving the fully burdened cost of one or more servers which is significantly more than 5k.  Consider labor, real-estate, hardware, and hardware acquisitions costs.  Add in incremental costs such as power and administration.  

Your comment has been posted.   Close
Thank you, your comment requires moderation so it may take a while to appear.   Close
Leave a Comment