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

Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to