MPI的一个非常小的问题(要上讲台讲很纠结啊)
本人很不幸的成为一名组长,任务就是讲MPI的一些知识,万恶队友从来不关心我啊 各位大大救救我吧应该是比较简单的,但是我对MPI一无所知,被一个小程序卡住了,希望大家不吝赐教;
最简单的通信:
代码:
#define MPICH_SKIP_MPICXX
#include "mpi.h"
#include<stdio.h>
#include<string.h>
void main(int argc,char **argv)
{
char message[20];
int myrank;
MPI_Status status;
MPI_Init(&argc,&argv);//初始化
MPI_Comm_rank(MPI_COMM_WORLD,&myrank);
if(myrank==0)
{
strcpy(message,"Hello,process 1");
MPI_Send(message,strlen(message),MPI_CHAR,1,99,MPI_COMM_WORLD);
}
if(myrank==1)
{
MPI_Recv(message,20,MPI_CHAR,0,99,MPI_COMM_WORLD,&status);
printf("received:%s:",message);
}
MPI_Finalize();
}
编译没有错误,就是运行结果不对,结果如下:
表示不懂 怎么解决勒