获取NUMA系统中的节点距离(跳数)

时间:2010-01-10 20:09:35

标签: c++ windows linux memory numa

是否有任何API /方法可以获得两个NUMA节点之间的“距离”(在文献中称为“跳跃”)?我想实现一个利用这个的内存分配系统(从最近的节点重用内存,因为访问速度更快) Windows似乎没有这样的功能......并且libnuma(在Linux下)似乎也没有。有没有办法获得这些信息(即使是'cpuid'之类的东西)?

2 个答案:

答案 0 :(得分:2)

对于Linux,至少可以通过解析/ proc来获取拓扑。这可以解释为例如在Ulrich Drepper's "What every programmer should know about memory"的第5章中。第6.5章也有些相关。

答案 1 :(得分:2)

查看hwloc中的库和工具。