如何确认主机是否具有NUMA感知功能?在甲骨文的文档说,NUMA意识开始于内核2.6.19,但NUMA手册页说,它与2.6.14介绍.我想确保Java进程开始-XX:+UseNUMA实际上正在利用某些东西.
检查numa_maps,我看到我有它们:
# find /proc -name numa_maps
/proc/1/task/1/numa_maps
/proc/1/numa_maps
/proc/2/task/2/numa_maps
/proc/2/numa_maps
/proc/3/task/3/numa_maps
Run Code Online (Sandbox Code Playgroud)
虽然我的内核落后于Oracle所说的内容:
# uname -sr
Linux 2.6.18-92.el5
Run Code Online (Sandbox Code Playgroud)
我目前在RHEL5.1上使用64位jdk1.6.0_29.
这些/ proc文件的存在表明你的linux内核是numa感知的.不要过多地关注版本号,因为特别是对于Oracle/RHEL内核,供应商在不保持版本字符串"最新"的情况下移植/移植许多功能.
测试同一件事的其他方法:
$ grep NUMA=y /boot/config-`uname -r`
CONFIG_NUMA=y
CONFIG_K8_NUMA=y
CONFIG_X86_64_ACPI_NUMA=y
CONFIG_ACPI_NUMA=y
$ numactl --hardware
available: 2 nodes (0-1)
node 0 size: 18156 MB
node 0 free: 9053 MB
node 1 size: 18180 MB
node 1 free: 6853 MB
node distances:
node 0 1
0: 10 20
1: 20 10
Run Code Online (Sandbox Code Playgroud)