A recent TechTarget piece pits VMware vSphere memory management technologies against the new Microsoft Hyper-V Dynamic Memory. While certainly an interesting topic, I was disappointed by some of the inaccurate statements propping up the Hyper-V side. With no facility to provide comments on that article directly, I thought I’d take a moment to set the record straight.
The key claim — that Microsoft offers more control over virtual machine memory — is misinformed at best:
Hyper-V Dynamic Memory also has a greater range of configurable options than does VMware memory overcommit. Users can assign limits to problematic VMs with memory-hungry workloads, and if memory contention occurs, users can prioritize specific VMs. A configurable buffer value also identifies how much extra memory is reserved for short-term needs between rebalancing passes.
Readers seeking to find the true differences between these platforms will need to search elsewhere. A factual comparison reveals that Hyper-V Dynamic Memory offers no advantage over VMware vSphere: A VMware ESX VM has settings for memory size, limit, reservation, and shares to specify priority. Not only that, VMware vSphere offers a comprehensive range of memory management technologies: ballooning, page sharing, compression, and host swapping.
What vSphere doesn’t have is a reserve memory buffer setting — this is an artifact of the Dynamic Memory design, accommodating for lag time inherent to the hot-add process. Interestingly, when running important enterprise applications like SQL Server, Microsoft recommends cranking the buffer down to the lowest possible setting.
VMware vSphere offers the widest range of memory management and configuration capabilities, accommodating even the most demanding workloads.