38 USE spmd_comm_world_mod,
ONLY : spmd_comm_world
39#include "implicit_f.inc"
52 INTEGER SRBUF(*), LEN, LRECV
57 INTEGER MSGOFF,MSGOFF2,MSGTYP,INFO,I,K,ATID,ATAG,ALEN,RLEN,S1
58 INTEGER STATUS(MPI_STATUS_SIZE),IERROR
59 INTEGER SIZES(NSPMD),POINTERS(NSPMD)
60 INTEGER,
ALLOCATABLE,
DIMENSION(:) :: SRBUF2
70 CALL mpi_gather(len,s1,mpi_integer,sizes,s1,mpi_integer,0,spmd_comm_world,ierror)
76 lrecv = lrecv + sizes(i)
81 pointers(i) = pointers(i-1)+sizes(i-1)
83 ALLOCATE(srbuf2(lrecv))
88 CALL mpi_gatherv(srbuf,len,mpi_integer,srbuf2,sizes,pointers,mpi_integer,0,spmd_comm_world,ierror)
subroutine mpi_gather(sendbuf, cnt, datatype, recvbuf, reccnt, rectype, root, comm, ierr)
subroutine mpi_gatherv(sendbuf, cnt, datatype, recvbuf, reccnt, displs, rectype, root, comm, ierr)