问题描述
如何确认主机是否具有NUMA感知功能? 说明了NUMA意识从内核2.6.19开始,但说它是用2.6.14引入的。我想确保以 -XX:+ UseNUMA
开始的Java进程实际上正在利用某些东西。
How can I confirm that a host is NUMA-aware? The Oracle doc says that NUMA-awareness starts at kernel 2.6.19, but the NUMA man page says that it was introduced with 2.6.14. I'd like to be sure that a Java process started with -XX:+UseNUMA
is actually taking advantage of something.
检查numa_maps,我看到我有它们:
Checking for the numa_maps, I see that I have them:
# 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
虽然我的内核落后于Oracle所说的内容:
Though my kernel is behind what Oracle states:
# uname -sr
Linux 2.6.18-92.el5
我目前在RHEL5.1上使用64位jdk1.6.0_29。
I'm currently using 64-bit jdk1.6.0_29 on RHEL5.1.
推荐答案
这些/ proc文件的存在表明你的linux内核是numa感知的。不要过多地关注版本号,因为特别是对于Oracle / RHEL内核,供应商在没有保持版本字符串最新的情况下移植许多功能。
The presence of those /proc files indicates that your linux kernel is numa-aware. Don't concern yourself too much comparing version numbers, as, particularly with Oracle / RHEL kernels, the vendors port/backport many features without keeping the version string "up to date".
测试相同事物的其他方法:
Other ways of testing the same thing:
$ 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
这篇关于如何确认NUMA?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!