【问题标题】:mpirun on CPUs with specified IDs在具有指定 ID 的 CPU 上运行 mpirun
【发布时间】:2013-08-13 01:03:59
【问题描述】:

有人知道如何在指定的 CPU 上执行 mpirun 吗?虽然“mpirun -np 4”指定了使用的CPU数量,但我这里要做的是指定CPU ID。

操作系统为 CentOS 5.6,MVAPICH2 用于具有 6x2 内核的单个节点。

感谢您的合作。

【问题讨论】:

    标签: centos mpi mvapich2


    【解决方案1】:

    是的;新版本的 mvapich2 使用 hwloc 库来启用 CPU 关联和绑定。

    来自User Guide

    例如,如果您想每个节点运行 4 个进程并利用内核 每个节点上0、1、4、5,可以指定:

    $ mpirun_rsh -np 64 -hostfile hosts MV2_CPU_MAPPING=0:1:4:5 ./a.out

    $ mpiexec -n 64 -f hosts -env MV2_CPU_MAPPING 0:1:4:5 ./a.out

    这样,每个节点上的进程0都会映射到核心0,进程 1 将映射到核心 1,进程 2 将映射到核心 4,并且 进程 3 将映射到核心 5。对于每个进程,映射为 用一个“:”分隔。

    【讨论】:

    • 感谢您的快速回复!
    猜你喜欢
    • 2016-10-11
    • 2012-12-09
    • 2016-11-16
    • 2014-02-06
    • 2015-02-16
    • 2011-04-07
    • 2022-11-05
    • 1970-01-01
    • 2021-05-07
    相关资源
    最近更新 更多