所以我最后得到的是一个数组TEMP(1:M,0:N),其中M是粒子总数。现在,通过划分粒子,很容易将问题并行化。因此,每个处理器在一个数组TEMP(MYSTART:MYEND,0:N)上工作,而主机在TEMP(1:M,0:N)上工作。现在我需要重新组合数组(实际上有多个这样的数组,但现在只关注一个)。END IF
IF (ierr_
当我使用Send/Recv时,我的代码可以工作,但当我用Isend/Irecv替换Send/Recv时,它会产生分段错误。但是在去其他地方之前,我想验证一下下面的代码片段是不是已经写好了。剩下的代码在Send/Recv工作时应该没问题;但我没有在这里粘贴,因为它是一个很长的代码。(RCC),MPI_DOUBLE_PRECISION,0,8,MPI_COMM_WORLD,REQ(NT),IERR)
IF (TASKID.EQ.0) THEN