Hi all!
I have initially posted this on another forum, but got no replies. Searching here also led to not much. Google also offers noting significant, unless I completely missed the boat, which is possible...
So my server has been running for about 3 months now with a slackware14-64 and kernel 3.2.45 migration from an older setup. The current running kernel is configured with the following flags:
Code:
CONFIG_X86_64_SMP=y
CONFIG_SMP=y
CONFIG_NR_CPUS=32
And returns this when probed about type and version:
Code:
root@lhost2:~# uname -a
Linux lhost2 3.2.45 #2 SMP Fri May 31 20:14:55 CDT 2013 x86_64 AMD Opteron(tm) Processor 4334 AuthenticAMD GNU/Linux
Now to the question: when building this machine, we were made aware that there was such a thing as NUMA and UMA... Reading about the topic on Google and provided I understand correctly, NUMA is an architecture where in multi-socket machines, memory populated together with a CPU consists of a node. A certain chip (CPU) would be allowed to access its local memory bank(s) faster than accessing remote memory bank(s) located on another node. Hardware wise, the H8DCL-IF motherboard I am using complies with this. RAM is also populated as per Supermicros guidelines, that is, with 4 identical sticks (a kit of 4X 16GB), 2 on each node on channels A of each chips.
The BIOS is currently set to "Enable NUMA", has bank and channel interleaving ON and has Node interleaving OFF. In my world, that means NUMA is fully activated, yet when I run the utility "numactl --hardware" it causes a segmentation fault and crashes. According to the numactl maillist, this would be because my platform doesnt support NUMA (or is not properly configured). This is consistent with running
which returns
Code:
physcpubind: 0 1 2 3 4 5 6 7 8 9 10 11
No NUMA support available on this system.
The running kernel doesnt seems to support (with its current config) NUMA as I could only find this flag in the kernel's running config:
Code:
# CONFIG_NUMA is not set
So the questions:
1-Should I make NUMA work or will I suffer a performance penalty?
2-Do I need to recompile the kernel with NUMA activated? Threads on other Linux forums seemed to indicate that the modern kernels were automatically NUMA aware and did not require special flags...
3-Is my BIOS config OK? (Node interleave OFF, Bank interleave ON, Channel interleave ON, NUMA enabled)
4-The numactl page (
https://www.sharcnet.ca/help/index.php/Using_numactl) talks about NUMA:
Quote:
This is in contrast to symmetric multiprocessing or SMP architecture in which each processor is connected to the whole of main memory at uniform speed.
|
I am currently using a SMP kernel.
According to their statement, that would mean that my current config uses a UMA architecture... Is it why numactl seems to think that NUMA is not available?
Thanks for any insight or help!