How to disable NUMA in Red Hat Enterprise Linux system?

Solution Verified - Updated -

Environment

  • Red Hat Enterprise Linux 4
  • Red Hat Enterprise Linux 5
  • Red Hat Enterprise Linux 6
  • Red Hat Enterprise Linux 7
  • Red Hat Enterprise Linux 8

Issue

  • How to disable NUMA in Red Hat Enterprise Linux system?

Resolution

  • Adding the "numa=off" to kernel command line in boot loader configuration and rebooting the system will disable NUMA awareness.

Examples:

  • RHEL6 or earlier (/boot/grub/grub.conf)

        title Red Hat Enterprise Linux AS (2.6.9-55.EL)
                root (hd0,0)
                kernel /vmlinuz-2.6.9-55.EL ro root=/dev/VolGroup00/LogVol00 rhgb quiet numa=off
                initrd /initrd-2.6.9-55.EL.img
    
  • RHEL7 or later (/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"
    

    Please note, grub config has to be rebuilt for changes to take effect:

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

Root Cause

  • NUMA cannot be disabled, but kernel can handle all memory as a single NUMA node. /usr/share/doc/kernel-doc-4.18.0/Documentation/x86/x86_64/boot-options.txt describes the option as follows.

      numa=off      Only set up a single NUMA node spanning all memory.
    

This solution is part of Red Hat’s fast-track publication program, providing a huge library of solutions that Red Hat engineers have created while supporting our customers. To give you the knowledge you need the instant it becomes available, these articles may be presented in a raw and unedited form.

5 Comments

Good to know it can be disabled for newly installed kernels in /etc/default/grub.

~]# grub2-mkconfig -o /etc/grub2.cfg ---->>>>please note:the above command is available for BIOS-based machine。 If a UEFI-based machine, the command is:grub2-mkconfig -o /boot/efi/EFI/redhat/grub.cfg Plaese modify 。 Please refer this article:https://access.redhat.com/solutions/1320153

/etc/grub2.cfg is symlink pointing to proper EFI or BIOS grub.cfg; Therefore it is universal method of updating grub config.

How to disable numa on RHEL8? is it the same as RHEL7? Thanks

How to disable in RHEL8 and RHCOS?