Essentially, nodes are data structures used to denote a physical RAM module on the system motherboard and its associated controller chipset. Yes, we're talking actual hardware here being abstracted via software metadata. It's always associated with a physical socket (or collection of processor cores) on the system motherboard. Two types of hierarchies exist:
- Non-Uniform Memory Access (NUMA) systems: Where the core on which a kernel allocation request occurs does matter (memory is treated non uniformly), leading to performance improvements
- Uniform Memory Access (UMA) systems: Where the core on which a kernel allocation request occurs doesn't matter (memory is treated uniformly)
True NUMA systems are those whose hardware is multicore (two or more CPU cores, SMP) and have two or more physical "banks" of RAM each of which is associated with a CPU (or CPUs). In other words, NUMA systems will always have two or more nodes, wherea...