weixin_39156641
weixin_39156641
2018-11-21 02:43

mpi初始化之前的cout输出为啥也输出多次

5
  • mpi+并行

#include"mpi.h"
#include
#include
#include
#include
#include
using namespace std;
#define n 1000
using namespace std;
int main(int argv, char *argc[])
{
cout<<"hello"<<endl;//为啥这里的hello也被输出多次????????
int rank, p, a;
MPI_Init(&argv, &argc);
MPI_Comm_rank(MPI_COMM_WORLD, &rank);
MPI_Comm_size(MPI_COMM_WORLD, &p);
MPI_Status status;
return 0;
}
有没有大神帮我解决一下,为啥main函数刚进去的第一个cout就输出多次,有没有解决的方法,使得我用4个进程时也只输出一次。也许可以将这句话放在rank赋值之后,判断rank==0来决定输出。但是强迫症的我就想在最开始只输出一次,因为看了一个师兄的程序,他里面也用到了并行(程序太大,上万行,没仔细看),但是他的在main函数刚开始就输出了,而且对于多进程也只输出一次。所以觉得一定有方法。请赐教啊。。。

  • 点赞
  • 回答
  • 收藏
  • 复制链接分享

1条回答