Red Hat Training
A Red Hat training course is available for Red Hat Enterprise Linux
9.2. 自动 NUMA Balancing
自动 NUMA 平衡提高了在 NUMA 硬件系统上运行的应用程序的性能。它在 Red Hat Enterprise Linux 7 系统中默认启用。
当进程线程正在调度到与线程相同的 NUMA 节点上时,应用程序通常会尽力执行最佳操作。自动 NUMA 平衡移动任务(可以是线程或进程)更接近他们访问的内存。它还将应用程序数据移动到更接近引用它的任务中。这在自动 NUMA 平衡激活时由内核自动完成。
自动 NUMA 平衡使用多种算法和数据结构,它们只有在系统中有自动 NUMA 平衡活跃时才激活并分配:
- 定期进程内存的 NUMA 取消映射
- NUMA 提示错误
- migrate-on-Fault(MoF)- 将内存移动到程序运行的位置
- task_numa_placement - 移动运行程序更接近其内存
9.2.1. 配置自动 NUMA Balancing
在 Red Hat Enterprise Linux 7 中默认启用自动 NUMA 平衡,并在使用 NUMA 属性引导时自动激活。
满足以下任一条件时启用自动 NUMA 平衡:
- # numactl --hardware 显示多个节点
- # cat /proc/sys/kernel/numa_balancing shows
1
应用程序的手动 NUMA 调优将覆盖自动 NUMA 平衡,禁用定期不映射内存、NUMA 错误、迁移和自动 NUMA 放置。
在某些情况下,首选使用系统范围的手动 NUMA 调整。
要禁用自动 NUMA 平衡,请使用以下命令:
# echo 0 > /proc/sys/kernel/numa_balancing
要启用自动 NUMA 平衡,请使用以下命令:
# echo 1 > /proc/sys/kernel/numa_balancing