1

我正在使用 NUMA 计算节点,其中网络(Mellanox InfiniBand HCA)连接到第二个 CPU 插槽(和 NUMA 节点)。是否有任何环境变量可以使用MVAPICH2.2将所有 MPI 进程简单地绑定到第二个 CPU 套接字?

MV2_CPU_BINDING_LEVEL=socket MV2_CPU_BINDING_POLICY=bunch组合不起作用,因为它开始在第一个 CPU 插槽上重新组合进程。

我通常最终使用类似的东西:( -genv MV2_CPU_MAPPING 10:11:12:13:14:15:16:17:18:19:30:31:32:33:34:35:36:37:38:39 使用第二个 10 核 CPU 插槽的所有 SMT)但这很丑陋并且取决于内核的数量。

4

1 回答 1

0

这不是环境变量,但如果您能够/etc/default/grub在系统上进行修改,那么您可以将包 0 上的内核与调度程序隔离开来。10 核(超线程)CPU 的示例:

GRUB_CMDLINE_LINUX_DEFAULT="$GRUB_CMDLINE_LINUX_DEFAULT isolcpus=0-19"
于 2018-09-20T02:22:39.117 回答