硬件局部性 (hwloc)
hwloc 文档主页是一个缩短和格式不佳的版本。有关详细信息,请参阅 https://www.open-mpi.org/projects/hwloc/doc/。
hwloc 提供了命令行工具和 C API,可获取节点内关键计算元素的层次结构映射,例如:NUMA 内存节点、共享缓存、处理器包、芯片和核心、处理单元(逻辑处理器或"线程")以及 I/O 设备。hwloc 还收集了各种属性,如缓存和内存信息,并且可在各种不同的操作系统和平台上移植。
由于它使用标准操作系统信息,因此hwloc的支持大多与处理器类型( x86、powerpc 等)无关,只依赖于操作系统的支持。主要的例外是BSD操作系统(NetBSD、FreeBSD等),因为它们不提供CPU拓扑信息,因此hwloc使用基于x86的CPUID后端(也可用于其他操作系统,请参阅组件和插件部分)。要检查hwloc是否在特定机器上运行,只需尝试进行构建,然后运行lstopo或lstopo-no-graphics。如果某些东西不起作用,则表明hwloc在该机器上无法运行。
暂无开放 Issues,或尚未同步最近议题。