我是MPI编程的新手,我编写了以下代码来检查排名,所以当我运行代码时,它一次随机选择任何一个处理器。
所以当我进行MPI运行时,我得到跟随输出(我运行了两个实例)处理器编号,即-np 10
我得到以下输出:
实例1:
$ mpirun -np 10 L2
等级2
等级7
等级5
等级1
等级4
等级9
等级0
等级3
等级8
等级6
实例2:
$ mpirun -np 10 L2
等级4
等级2
等级1
等级9
等级5
等级3
等级0
等级6
等级8
等级7
我想知道是否有任何方法可以从特定处理器开始并按顺序执行,例如每个增加1:如果我希望从6开始,则输出应如下所示:
等级6
等级7
等级8
等级9
等级0
等级1
等级2
等级3
等级4
等级5
谢谢!
Shubh
编码员GeEk:P
以下是代码:
#include<iostream>
#include<mpi.h>
using namespace std;
int main(int argc, char *argv[]){
int rank, size;
MPI_Init(&argc, &argv);
MPI_Comm_rank(MPI_COMM_WORLD, &rank);
MPI_Comm_size(MPI_COMM_WORLD, &size);
cout<<"Rank "<<rank<<endl; mpi_finalize();
}
Tellme,如果我能够清楚地解释我的问题,或者我将编辑它以更好地解释它。