我试图理解node distances
中的numactl --hardware
是什么意思?
在我们的群集上,它会输出以下内容
numactl --hardware
available: 2 nodes (0-1)
node 0 cpus: 0 1 2 3 4 5 12 13 14 15 16 17
node 0 size: 32143 MB
node 0 free: 188 MB
node 1 cpus: 6 7 8 9 10 11 18 19 20 21 22 23
node 1 size: 32254 MB
node 1 free: 69 MB
node distances:
node 0 1
0: 10 21
1: 21 10
这是我到目前为止所理解的:
numa
群集上,我们必须制作一个" hop"到下一个集群访问其他节点上的内存,这会导致更高的延迟。 10
和21
是否表示" hops"?如何在ns
中找到延迟?是指定的地方吗?编辑:This链接表示距离不在ns
,而是相对距离。如何在ns中获得绝对延迟?
任何帮助将不胜感激。
答案 0 :(得分:1)
numactl --hardware
为您提供有关硬件架构的统计信息,而不是有关其性能的统计信息。
如果您想要硬件的性能特征,您必须自己测量,无论是在线查找现有硬件还是编写自己的基准测试。 https://stackoverflow.com/a/47815885/1411628会让您了解如何开始编写自己的工作台。
答案 1 :(得分:0)
要获取绝对延迟数,如果您使用的是Intel系统,则可以针对任何特定系统使用其Memory Latency Checker工具。 https://software.intel.com/en-us/articles/intel-memory-latency-checker
它更喜欢使用root / admin权限来禁用硬件预取,否则硬件预取会使数字产生偏差,但是如果您没有此功能,文档还指出您可以要求它从其他节点获取随机元素,从而非常接近真实数字,例如:
./mlc --latency_matrix -e -l128 -r
Intel(R) Memory Latency Checker - v3.5
Command line parameters: --latency_matrix -e -l128 -r
Using buffer size of 200.000MB
Measuring idle latencies (in ns)...
Numa node
Numa node 0 1
0 112.5 180.3
1 180.8 112.4