Organization in the NUMA Model
The various architectures supported differ greatly in terms of how they manage memory. Owing to the intelligent design of the kernel and, in some cases, intervening compatibility layers, these differences are so well concealed that generic code can usually ignore them. As discussed in Chapter 1, a major issue is the varying number of indirection levels for page tables. A second key aspect is the division into NUMA and UMA systems.
The kernel uses identical data structures for machines with uniform and non-uniform memory access so that the individual algorithms need make little or no distinction between the various forms of memory arrangement. On UMA systems, a single NUMA node is introduced to help manage the entire system memory. The other parts of memory management are led to believe that they are working with a pseudo-NUMA system.
Continue reading here: Overview
Was this article helpful?