Questions tagged [numa]

NUMA stands for Non Uniform Memory Access. It is a general linux term indicating that the hardware has multiple memory nodes, and that not all processing units have equal access to all memory.

NUMA stands for Non Uniform Memory Access. It is a general linux term indicating that the hardware has multiple memory nodes, and that not all processing units have equal access to all memory.

As processors become faster and faster, proximity to memory increases in importance for overall computing performance. NUMA systems address this problem by building closer connections between specific computing resources and memory.

307 questions
3
votes
1 answer

Does NUMA impact memory bandwidth, or just latency?

I have a problem that is memory bandwidth limited -- I need to read a lot (many GB) of data sequentially from RAM, do some quick processing and write it sequentially to a different location in RAM. Memory latency is not a concern. Is there any…
Steve Linton
  • 349
  • 4
  • 12
3
votes
1 answer

Open MPI 4.0 core and memory binding

I need some hints on how to achieve the core and memory bindings I have in mind, using Open MPI 4.0.1. This is for a single compute node with 8 NUMA nodes and 64 cores, namely 2x AMD Epyc 7551, SMT disabled. The cores on this system are numbered…
MechEng
  • 360
  • 1
  • 13
3
votes
1 answer

Spreading OpenMP threads among NUMA nodes

I have a matrix spread among four NUMA-node local memories. Now I want to open 4 threads, each one on a CPU corresponding to a different NUMA-node, so that each thread can access its part of the matrix as fast as possible. OpenMP has the…
3
votes
1 answer

Using perf to monitor memory access of every CPU

I'm trying to use the linux perf tool to sample the memory accesses in my program. Specifically, I'm using perf to monitor read/write access of every CPU in NUMA. Now, I can monitor every single CPU's read and write memory access, but I also have to…
Aries_Liu
  • 95
  • 1
  • 10
3
votes
1 answer

How is NUMA represented in virtual memory?

There are many resources describing the architecture of NUMA from a hardware perspective and the performance implications of writing software that is NUMA-aware, but I have not yet found information regarding the how the mapping between virtual…
merlin2011
  • 71,677
  • 44
  • 195
  • 329
3
votes
1 answer

Spark on NUMA systems

I'm considering Apache Spark for data analysis. In the past I've experienced Java/Scala slowdowns on 4-socket servers due to NUMA architecture and objects being local to a single node. The solution was to start a separate pinned JVM for each NUMA…
Pengin
  • 4,692
  • 6
  • 36
  • 62
3
votes
2 answers

Numa balancer in Linux

Is NUMA balancer enabled by default in recent Linux versions? If so how can I disable the NUMA balancer please let me know.
Pradeep Jagadeesh
  • 85
  • 1
  • 2
  • 10
3
votes
1 answer

Advantages of using MPI on a UMA machine

What are the advantages to using MPI on a UMA machine. It seems to me that is would make more sense to use OpenMP with a UMA machine because they both share memory. Where MPI makes more sense on a NUMA machine because NUMA gives each process its…
Aaron
  • 4,380
  • 19
  • 85
  • 141
3
votes
0 answers

Odd NUMA behavior/system topology?

I have a two socket system. I have disabled hyperthreading in BIOS. numactl --hardware shows this: ucs48:~$ numactl --hardware available: 2 nodes (0-1) node 0 cpus: 0 2 4 6 node 0 size: 12222 MB node 0 free: 11192 MB node 1 cpus: 1 3 5 7 node 1…
Al Patel
  • 31
  • 2
3
votes
1 answer

Determine socket/processor of running thread

I writing NUMA-aaware cache for large objects (matrices of doubles) for 4 socket server. I observe that intersocket communication is the bottleneck for my application. Hence, I want threads on different sockets to have separate matrix caches. I have…
cdome
  • 31
  • 2
3
votes
2 answers

Get the location of a memory in NUMA

I am currently working on a NUMA system with 2 nodes. I got a pointer pointing to some memory, but I do not know which node it is in. Is there any way I can get the node number of the memory? (The reason that getting the node mask of the current…
user3743384
  • 91
  • 1
  • 11
3
votes
3 answers

efficient use of NUMA architecture

I'm writing a multithreaded java program that uses intensive CPU and memory usage. The goal of the program is to execute some algorithm on a graph. The program is executed on a NUMA machine running linux and I'd like to get the best possible…
jutky
  • 3,895
  • 6
  • 31
  • 45
3
votes
1 answer

In a linux(CentOS)/multiprocessor setting, how to assign CPU cores to NUMA nodes?

I am working on a quad Operton 6272 system with CentOS installed on it. I suspect there is something wrong with the NUMA configuration. When I run numactl --hardware I get: available: 5 nodes (0,2-4,6) node 0 cpus: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14…
Alexander Chertov
  • 2,070
  • 13
  • 16
3
votes
1 answer

Multithreading decreases socket throughput on NUMA

I benchmarked a Java program on a 16 core NUMA machine with Red Had Linux. I measured the throughput of a Java DatagramSocket (for UDP) in terms of how many packets (of 64 Bytes size) it was able to receive and send per second. The program consisted…
3
votes
1 answer

Given a page pointer in a linux kernel module, how to get the NUMA node id on which it is assigned?

I am working on a checkpoint/Restart Linux kernel module. Wherein, a process sends a request to this module to checkpoint itself. In this process information about the process is stored in a file, which is used later on to restart the process. Now…
ajay saini
  • 305
  • 1
  • 2
  • 8