KB 2040375: vCPU Hot-Plug disables vNUMA

This operational risk/misconfiguration was detected by a visiting SQL server consultant from Microsoft at my organisation recently.  Just goes to show how you can achieve the VCDX and still know nothing.

Use Case: SQL Server 2012 running on Windows Server 2012 with vSphere 5.1 configured for 16 vCPU/128GB RAM on an ESXi host with 2 x 10 Core sockets and 512GB RAM.

vCPU Hot-plug is configured and since the VM has more than 8 vCPU, we ASSUMED that vNUMA was enabled and did not check it.  WRONG! When CPU Hot-plug is enabled, vNUMA is disabled and reverts to Uniform Memory Access with interleaving.  SQLPerformance also has a good write-up.

If you have large VMs with modern applications and operating systems that you ASSUME are using vNUMA, check them just to be sure.


Published by


Chief Enterprise Architect and Strategist, 4xVCDX#133, NPX#8, DECM-EA.

2 thoughts on “KB 2040375: vCPU Hot-Plug disables vNUMA”

  1. Only today I had to explain this to a customer.

    There are a couple of reasons why the Hot-Add features shouldn’t be enabled on your templates. This is why VMware doesn’t have these features enabled by default.

    1) Operating System and Application Supportability, not all Operating Systems support hot-add. Even if the OS supports it, to get any benefit, the application itself needs to support hot-add too. For instance, Windows 2008 R2 Enterprise running SQL Server 2008. Additional changes in SQL are likely to be required.

    2) Additional Memory Overhead, when you enable Hot-Add on the virtual machine, the amount of memory overhead that will be used to run that VM will increase. For instance, in vSphere 5.1, the amount of memory overhead used when enabling Hot-Add will be equivalent to a VM that is configured with 64 vCPUs and 1TB of vRAM (the maximum virtual resources available for the VM). If enabled by default on your templates this small overhead will add up quickly.

    3) vNUMA is disabled on the Virtual Machine when the Hot-Add feature is enabled on a virtual machine, vNUMA is automatically disabled – which by default is enabled on VMs that have 8 or more vCPUs configured.

    So you have to consider these drawbacks when deciding your use cases. “
    Martin Hosken
    VCDX #117

Comments are closed.