MPI Programming C ++,基于排名的过程的特定序列

时间:2016-09-28 16:36:07

标签: c++ mpi distributed-computing message-passing


我是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,如果我能够清楚地解释我的问题,或者我将编辑它以更好地解释它。

0 个答案:

没有答案