【问题标题】:Submit multiple mpirun programs in sun grid engine在 sun Grid Engine 中提交多个 mpirun 程序
【发布时间】:2015-05-21 05:54:33
【问题描述】:

我想知道如何在 Sun Grid Engine 的一个作业脚本文件中提交多个 mpirun 程序。

假设我已经编译了 program1, program2, program3 .. program100 并希望同时运行它们,以便每个使用 16 cpu 在一个作业脚本中,而无需制作 100 个作业脚本。

mpirun -np 16 program1 &
mpirun -np 16 program2 &
mpirun -np 16 program3 ....

如何将节点分配给 Sun Grid 引擎中的每个程序? (我可以将 SGE 的 hostfile 分成 100 个并提供给每个 mpirun 吗?)

谢谢。

【问题讨论】:

    标签: openmpi sungridengine supercomputers


    【解决方案1】:

    使用 SGE 实现该用例的正确方法是使用数组作业:

    #$ -cwd
    #$ -pe mpi 16
    #$ -t 100
    
    mpirun -np $NSLOTS ./program${SGE_TASK_ID}
    

    -t 100 参数创建一个包含 100 个任务的数组作业,每个任务在 SGE_TASK_ID 环境变量中接收不同的值,范围从 1100

    拆分主机文件是不可取的,因为这可能会干扰 MPI 库与 SGE 执行和作业监控机制之间的集成。

    【讨论】:

    • 我在 SGE 中尝试了阵列作业,它成功了。阵列作业会以某种命名约定自动重复相同的作业脚本多次。谢谢。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-07-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多