Memory improvements in Windows 2012 Hyper-V August 20, 2012Posted by vbry21 in Windows 2012 Hyper-V.
Tags: Hyper-V, Microsoft, Windows 2012
Within Windows 2012 Hyper-V we get numerous improvements, I’ve decided in this post to combine two of the features together, they are NUMA and memory improvements.
NUMA or Non-Uniform Memory Access is a hardware feature.
Under NUMA, a processor can access its own local memory faster than non-local memory, that is, memory local to another processor or memory shared between processors.
With NUMA integration the hypervisor can place virtual machines on cores that allow for good NUMA locality. Or if you like stick the VMs on cores with high speed RAM.
EG 2x quad core with 32GB of RAM per socket, a VM with 48GB of RAM and 2 vCPUs would be placed on the a single core on each of the 2 sockets, rather than on 2 cores on a single socket.
Dynamic memory is a feature that lets virtual machine memory to be allocated as necessary, rather than as a fixed amount. For example, rather than setting a virtual machine with a fixed 8 gigabytes (GB) of memory, which Hyper-V allocates to the virtual machine, an administrator can use dynamic memory to allocate a minimum and maximum amount.
In this scenario, the virtual machines requests only what it needs. Although Windows Server 2008 R2 SP1 included the ability for virtual machines to use dynamic memory, you had to make any adjustments to these settings after you shut down the server.
Hyper-V 3.0 enables administrators to adjust dynamic memory settings on virtual machines that are running. You can use smart paging to configure start up memory, which differs from the minimum and maximum memory allocations.
When you use smart paging, the Hyper-V host uses memory paging to ensure that a virtual machine can start when there are not enough memory resources available to support start up, but enough to support the virtual machine’s minimum memory allocation.
The above gives us a huge improvement over how Hyper-V R1 used to allocate memory and this in turn gives us more efficient VMs.