使用MVAPICH2.2在第二个CPU套接字上绑定MPI进程

时间:2018-09-12 16:16:03

标签: mpi numa mvapich2

我正在使用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),但这很丑陋,并且取决于核的数量。

1 个答案:

答案 0 :(得分:0)

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

GRUB_CMDLINE_LINUX_DEFAULT="$GRUB_CMDLINE_LINUX_DEFAULT isolcpus=0-19"