How to Disable NUMA in CentOS / RHEL 6,7?

Non-Uniform Memory Access or Non-Uniform Memory Architecture (NUMA) is a physical memory design used in SMP (multiprocessors) architecture, where the memory access time depends on the memory location relative to a processor. Under NUMA, a processor can access its own local memory faster than non-local memory, that is, memory local to another processor or memory shared between processors.

 

In a NUMA system, processors, memory, and I/O are grouped together into cells. The latency and bandwidth characteristics of communication within a cell are “fast” while going outside a cell is “slow”. Since the memory in NUMA systems is physically distributed but logically shared, these systems offer better performance to applications that are optimized to use their features. For non-optimized applications, they still offer better performance since the default behavior is designed to be benign if not beneficial and they still have access to much larger shared resources of memory, CPUs, and disk space.

 

Disabling NUMA

 

1. To disable NUMA, add numa=off to the kernel line in grub.conf file, for example:

a. For RHEL 6

Edit the kernel line in the /boot/grub/grub.conf file

# vi /boot/grub/grub.conf
kernel /vmlinuz-2.6.39-400.215.10.EL ro root=/dev/VolGroup00/LogVol00 numa=off

 

b. For RHEL 7

Edit the kernel line in the file /etc/default/grub

# vi /etc/default/grub
GRUB_CMDLINE_LINUX="rd.lvm.lv=rhel_vm-210/root rd.lvm.lv=rhel_vm-210/swap vconsole.font=latarcyrheb-sun16 crashkernel=auto  vconsole.keymap=us rhgb quiet numa=off

 

Also, make sure you rebuild the GRUB configuration file using the command below in case of RHEL/CentOS 7.

# grub2-mkconfig -o /etc/grub2.cfg

 

2. Reboot the server for the changes to take effect.

# shutdown -r now

 

Verify

 

To verify after reboot check the /proc/cmdline file to see the GRUB command line options used. (Example below is from RHEL 6).

 

# cat /proc/cmdline
ro root=/dev/VolGroup00/LogVol00 numa=off

 

# numactl -H
available: 1 nodes (0)
node 0 size: 4195 MB
node 0 free: 3304 MB
node distances:
node 0
 0: 10

 

If NUMA was active, there would be more than one node listed. 

 

Was this answer helpful? 0 Users Found This Useful (0 Votes)