Back in the days of Windows Server 2012 when Hyper-V first began to fully support the NUMA architecture, most of the best practices guides that I remember reading stated that virtual machines should not span multiple NUMA nodes. The reason for this particular best practice was that stretching a VM across NUMA nodes can cause its performance to suffer. While there is definitely something to be said for squeezing the optimal performance from your virtual machines, there are certain situations in which it may be advantageous to allow a VM to span multiple NUMA nodes.
As previously mentioned, it is generally advisable to configure Hyper-V to disallow NUMA spanning when possible. If a Hyper-V host server contains multiple physical processors, then memory sockets are arranged in a way that mimics the CPU architecture. A system with two physical processors, for example, would have two (or more) NUMA nodes. The reason why this is important is because each processor has memory that is considered to be local to the processor. A processor can, of course, access non-local memory (memory that is local to a different processor within the system), but there is considerable latency involved because the processor cannot access that memory directly. A Hyper-V virtual machine will, therefore, experience the best performance if it is limited to using memory that is local to the CPU cores on which the VM is running.
To read the entire article, please click on http://techgenix.com/numa-configuration/