NUMA Performance Optimization
(Doc ID 1488175.1)
Last updated on MARCH 25, 2022
Applies to:Linux OS - Version 2.6.18 and later
Oracle Cloud Infrastructure - Version N/A and later
On architectures that support NUMA (non-uniform memory access) it is possible for an application executing on one NUMA domain to access memory physically on another NUMA domain. While this is done using a high-speed transfer bus, the accesses are significantly slower than access to memory local to the NUMA domain.
The Linux kernel makes extensive use of dynamic memory allocation during its normal operations. Depending on several heuristics, the memory may be allocated locally, or it may be allocated on a separate cluster node.
The kernel's memory allocation policy can be tuned using simple command-line settings.
Each cluster node can have a separate allocation policy. As a corollary, the settings should probably be changed on all cluster nodes. Pinning a process to a particular CPU has no impact on this allocation policy.
System performance can vary with system load, as memory allocations may be satisfied by using local memory, or by using remote memory from a different cluster node.
Performance anomalies include unexpected swap store usage; unexpectedly poor performance; or system out-of-memory process terminations while sufficient memory and swap space appear available.
To view full details, sign in with your My Oracle Support account.
Don't have a My Oracle Support account? Click to get started!
In this Document