Am 15.12.2012 04:16, schrieb Grant: >> > >> > So if I have 2 physical CPU's with 4 cores each and I enable > SMP, I'm >> > >> > using >> > >> > 8 cores? Can NUMA be either enabled or disabled when using > more than >> > >> > one >> > >> > physical CPU, or is it required? >> > >> >> > >> >> > >> NUMA is a hardware architecture. It's how you access memory on a >> > >> hardware level: NUMA = Non Uniform Memory Access vs a UMA > architecture >> > >> of typical (old/legacy) SMP systems (UMA = Uniform Memory Access). >> > >> >> > >> In a UMA system, all the memory belongs to all the sockets. In a NUMA >> > >> system, each socket has it's "own" local memory. In modern (x86-64) >> > >> processors, each socket has it's own memory controller so each socket >> > >> controls its own local memory. If one socket runs out of memory > it can >> > >> ask another socket to lend him some memory. In a UMA system, no > socket >> > >> has to ask since memory is global and belongs to all sockets so > if one >> > >> socket uses up all the memory ... the rest "starve". In NUMA, there's >> > >> more control over who uses what (be it cores or RAM). >> > >> >> > >> If you have a modern dual or quad (or higher #) socket system ... >> > >> you've got NUMA architecture and you can't get rid of it, it's >> > >> hardware, not software. >> > > >> > > So I must enable CONFIG_NUMA for more than one physical CPU, and > disable it >> > > for only one physical CPU? >> > >> > >> > Yup. But ... Why would you want to disable a socket (CPU)? If you >> > disable a socket (CPU) ... you lose the memory attached to that socket >> > (CPU) not to mention you lose those cores ;) >> >> Sure but it sounds like if my system only has one CPU socket, > CONFIG_NUMA should be disabled. > > I read this in make menuconfig: > > "The kernel will try to allocate memory used by a CPU on the local > memory controller of the CPU and add some more NUMA awareness to the > kernel. For 64-bit this is recommended if the system is Intel Core > i7 (or later), AMD Opteron, or EM64T NUMA." > > To be sure I have this right, I should disable CONFIG_NUMA on any system > with a single physical CPU, even if it's an AMD Opteron? > > - Grant
Disable it. You only have one memory controller. There is nothing the kernel could do wrong without. Regards, Florian Philipp
signature.asc
Description: OpenPGP digital signature