gpt4 book ai didi

linux - linux 如何计算两个 numa 节点之间的 numa 距离(任何 numa 库的内部逻辑,例如 libnuma..etc )?

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:35:42 25 4
gpt4 key购买 nike

我试图通过 numa_distance() 和其他相关函数(来自第一个链接),但无法理解。我只是想了解 linux 如何计算两个节点之间的 NUMA 距离,据说这个距离会根据架构和 NUMA 互连而变化。

我提到了以下链接:

  1. https://github.com/jmesmon/numactl/blob/0df3f720e606a3706700e0487ba19d720f50c4b8/distance.c

  2. https://github.com/jmesmon/numactl/blob/0df3f720e606a3706700e0487ba19d720f50c4b8/numa.h

  3. https://github.com/jmesmon/numactl/blob/0df3f720e606a3706700e0487ba19d720f50c4b8/libnuma.c

最佳答案

在 ACPI 规范(最新版本)中,您会找到一个名为“SLIT”/系统位置(距离)信息表的表的描述。该表只是一个数组(如 d = array[numa_node][numa_node]),操作系统使用它来确定任意 2 个 NUMA 节点之间的相对距离;其中数组中的值范围从 10 到 254(255 用于“这些 NUMA 域之间没有连接”),其中值 10 表示 NUMA 域中的某些内容访问同一 NUMA 域中的内容的速度(最快的情况) ) 而值 254 将慢 25.4 倍。

我假设固件使用硬编码值填充此表 - 例如主板制造商可能会进行一些测量并确定对于主板支持的所有 CPU 型号都足够好的值。

固件将此表提供给操作系统。操作系统不计算任何内容。

关于linux - linux 如何计算两个 numa 节点之间的 numa 距离(任何 numa 库的内部逻辑,例如 libnuma..etc )?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49355785/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com