让我们假设,我使用以下命令运行我的Open MPI应用程序:
mpirun a.out
我通过LSF作业调度程序脚本指定MPI等级数:
#BSUB -n 20
如何通过某些Open MPI环境变量指定mpirun
的MPI排名数?
我需要的原因如下。首先,我需要在一个节点上分配20个核心并运行5个独立的并行作业(1,2,3,4,10 MPI等级)。其次,我没有机会将这些工作作为非独家工作提交给同一主机。第三,我没有直接调用mpirun a.out
命令,因为它深深地隐藏在一些复杂的第三方脚本run.sh
中,而这只是run.sh
脚本,我可以在作业调度程序命令文件。这就是为什么我想做这样的事情:
OMPI_NUM_RANKS=1 run.sh &
OMPI_NUM_RANKS=2 run.sh &
...
OMPI_NUM_RANKS=10 run.sh &