38 integer,
intent(in ) :: recvcounts(:)
39 integer,
intent(out) :: displs(:)
41 integer :: n_processes, i
45 n_processes =
size(displs)
46 assert(
size(recvcounts) == n_processes)
50 displs(i) = displs(i-1) + recvcounts(i-1)
59 integer,
intent(in ) :: recvcounts(:)
60 integer(int64),
intent(out) :: displs(:)
62 integer :: n_processes, i
66 n_processes =
size(displs)
67 assert(
size(recvcounts) == n_processes)
71 displs(i) = displs(i-1) + recvcounts(i-1)
subroutine mpi_displacements_int64(recvcounts, displs)
Compute the displacements required for (all)gather(v) and (all)scatter(v).
subroutine mpi_displacements_int32(recvcounts, displs)
Compute the displacements required for (all)gather(v) and (all)scatter(v).