Hyper-V: NUMA Node Balancing

For those running Hyper-V on NUMA (Non-Uniform Memory Architecture) based platforms (such as HP’s DL785), this post presents a tuning suggestion for how to fine tune placement of virtual machine (VM) on to a specific NUMA node. Every VM in Hyper-V has a default NUMA node preference. Hyper-V uses this NUMA node preference when assigning […]

For those running Hyper-V on NUMA (Non-Uniform Memory Architecture) based platforms (such as HP’s DL785), this post presents a tuning suggestion for how to fine tune placement of virtual machine (VM) on to a specific NUMA node. Every VM in Hyper-V has a default NUMA node preference. Hyper-V uses this NUMA node preference when assigning physical memory to VM and when scheduling VM’s virtual processors. A VM runs best when virtual processors and memory that backs VM are both on same NUMA node, since such “remote” memory access is significantly slower than “local” access. By default, Hypervisor will assign NUMA node preference every time VM is run, and when choosing NUMA node, it’ll find best fit based on resources VM needs – preference’ll be given to a NUMA node that can support VM’s memory on locally available node memory.

Full Article: WSP blog