NUMA: Non-Uniform Memory Architecture is a hardware design that improves server scalability by removing motherboard bottlenecks.
Over the years, symmetric multiprocessing (SMP) architecture has been very popular. A common characteristic of SMP architecture is that all CPUs share a single front bus that is used to access memory, manage tasks and threads. This front bus becomes a point of contention, making it very difficult to scale.
Now with this understanding, NUMA addresses this issue very effectively. In NUMA, we have multiple nodes (localized structures) that make up the larger machine, and each node has its own bus. This minimizes front bus contention, leading to better scalability than SMP architecture offers. However, in NUMA each node also has its own local memory. So if a node has to access non-local (foreign) memory, it can be multiple times slower when compared to local memory access. An application that is NUMA-aware can address this issue by doing most of its work on the local node.
In NUMA:
a) Each node (or CPU) has its own memory bank
b) Memory access management is now distributed Reference:
https://msdn.microsoft.com/en-us/library/ms178144(v=sql.105).aspx Applications of NUMA - NUMA is fundamental to sQL Server's internal memory management
- SQL Server memory nodes map directly to hardware NUMA nodes
- SQL Server’s objective is to reduce the need for remote memory access where NUMA helps a lot since a task’s memory objects get created within the same NUMA node wherever possible
Hope this helps
--
Thanks & Regards,
RNA Team
Amatya, if this helps please login to Mark As Answer. | Alert Moderator