Monday, March 10, 2014

NUMA Architecture



NUMA

Non-uniform memory access (NUMA) is a computer memory design used in multiprocessing, where the memory access time depends on the memory location relative to the processor.
Under NUMA, a processor can access its own local memory faster than non-local memory (memory local to another processor or memory shared between processors).
The benefits of NUMA are limited to particular workloads, notably on servers where the data are often associated strongly with certain tasks or users.[1]

References:
[1] - https://en.wikipedia.org/wiki/Non-uniform_memory_access
[2] - https://www.kernel.org/doc/ols/2003/ols2003-pages-169-184.pdf


NUMATOP

There is possibility to monitor how NUMA uses memory with utility called 'numatop'. It should be useful to validade if 'numa concepts'  working property in virtual environments.
So, you can point that with a follow (unsupported for RHEL 6 at the moment) tool https://01.org/numatop that can show numbers of local/remote memory accesses and then he can easily see if vCPU mapping could be better.

Unfortunately, this isn't comes with RHEL, but it is progress now.
This utility can be run on RHEL7 out-of-the-box, on RHEL 6 kernel folks work on
adding tracing infrastructure needed by it.

No comments:

Post a Comment