David E. Ott
In this brief technical paper, the author provides an overview of the NUMA shared memory architecture and describe various techniques for optimizing application memory performance within a NUMA-based system. In particular, he discusses the role of processor affinity, memory allocation using implicit operating system policies, and the use of the system API’s for assigning and migrating memory pages using explicit directives.
NUMA, or Non-Uniform Memory Access, is a shared memory architecture that describes the placement of main memory modules with respect to processors in a multiprocessor system. Perhaps the best way to understand NUMA is to compare it with its cousin UMA, or Uniform Memory Access.


