Tuning CPU and memory with NUMA
Before we start tuning CPU and memory for NUMA-capable systems, let's see what NUMA is and how it works.
What is NUMA?
NUMA is an abbreviation for Non Uniform Memory Access:
Think about NUMA as a system where you have more than one system bus, each serving a small set of processors and associated memory. Each group of processors has its own memory and possibly its own I/O channels. It may not possible to stop or prevent access across these groups. Each of these groups is known as a NUMA node.
In this concept, if a process/thread is running on a NUMA node, the memory on the same node is normally called local memory and memory residing on another node is known as foreign/remote memory. This implementation is different from the SMP (Symmetric Multiprocessor System), where the access time for all of the memory is the same for all the CPUs.
There exists something called the NUMA ratio, a measure of how quickly a CPU can access...