马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?注册
x
求助版上高人,程序里面消息传递的流程如图,程序如下。运行的时候,mpi老是没反应,不知道是出了什么问题,求指教。谢谢!
**************0的交接面的交换信息
IF(MYID.EQ.0) THEN
CALL MPI_RECV(TEMP(1),3000,MPI_REAL,2,20,MPI_COMM_WORLD,STATU
& S,IERR)
CALL MPI_RECV(TEMP3(1),3000,MPI_REAL,1,10,MPI_COMM_WORLD,STATU
& S,IERR)
END IF
***************2的交接面的交换信息
IF(MYID.EQ.2) THEN
CALL MPI_SEND(TEMP5(1),3000,MPI_REAL,0,20,MPI_COMM_WORLD,IERR)
CALL MPI_RECV(TEMP7(1),3000,MPI_REAL,0,2,MPI_COMM_WORLD,STATU
& S,IERR)
CALL MPI_RECV(TEMP6(1),7000,MPI_REAL,1,12,MPI_COMM_WORLD,STATU
& S,IERR)
END IF
***************1的交接面的交换信息
IF(MYID.EQ.1) THEN
CALL MPI_SEND(TEMP9(1),3000,MPI_REAL,0,10,MPI_COMM_WORLD,IERR)
CALL MPI_SEND(TEMP10(1),7000,MPI_REAL,2,12,MPI_COMM_WORLD,IERR)
CALL MPI_RECV(TEMP11(1),3000,MPI_REAL,0,1,MPI_COMM_WORLD,STATU
& S,IERR)
CALL MPI_RECV(TEMP12(1),7000,MPI_REAL,2,21,MPI_COMM_WORLD,STATU
& S,IERR)
END IF
**************0 SEND TO 1AND 2
IF(MYID.EQ.0) THEN
CALL MPI_SEND(TEMP2(1),3000,MPI_REAL,2,2,MPI_COMM_WORLD,IERR)
CALL MPI_SEND(TEMP4(1),3000,MPI_REAL,1,1,MPI_COMM_WORLD,IERR)
END IF
**************2 SEND TO 1
IF(MYID.EQ.2) THEN
CALL MPI_SEND(TEMP81),7000,MPI_REAL,1,21,MPI_COMM_WORLD,IERR)
END IF |