Mastering Windows Server 2016 Hyper-V

(Romina) #1

memory slots directly linked to each of the sockets. A processor and the memory that
is directly attached and managed by the processor is known as a non-uniform memory
access (NUMA) node. There is typically a 1:1 relationship between sockets and NUMA
nodes, although some of the latest hardware does have more than one NUMA node
per socket. A motherboard with four sockets would normally have banks of memory
for each socket and would therefore have four NUMA nodes. A processor can access
the local memory in its NUMA node faster than nonlocal memory, which means that
for best performance, processes running on a processor should use memory within
that processor’s NUMA node.


Windows Server 2012 introduced a new set of configurations for virtual machine
processors, NUMA, but the reality is that you should never touch these. Most likely
bad things will happen, and Hyper-V will make the right configurations for your
environment without any manual intervention. However, I do want to cover the
purpose of these settings and why NUMA is important. Note that Windows Server
2008 R2 Hyper-V host was NUMA aware and would always try to ensure that virtual
processors and memory were assigned within the same NUMA nodes, but this NUMA
topology was not made available to the virtual machine, which wasn’t a problem
considering virtual machines could have only four vCPUs and were therefore not
likely to use more than one NUMA node.


Operating systems are aware of the NUMA nodes and the configuration that enables
the most optimal resource usage. With the large virtual machines possible in Hyper-V,
the NUMA topology is also projected to the virtual machine, which is known as virtual
NUMA or vNUMA. vNUMA uses the standard ACPI (Advanced Configuration and
Power Interface) Static Resource Affinity Table (SRAT), which means that the NUMA
topology should be usable by any NUMA-aware operating system, including Linux.
This NUMA awareness is also a benefit for enterprise applications, such as SQL,
MySQL, and IIS, which utilize resources based on NUMA configuration.


VIRTUAL MACHINE NUMA CONFIGURATION


Figure 2.12 shows the NUMA configuration options available for the processor
configuration of a virtual machine. These options are hidden away for good reason. In
nearly all scenarios, you should not change these values. Hyper-V will do the best job
of setting the right NUMA topology based on the physical Hyper-V host. In a few
scenarios, however, you may need to change these values, which are related to the
number of processors, memory, and number of nodes on a single socket.

Free download pdf