Elements from all ranks are gathered correctly except for the
element belonging to the root/target rank of the gather operation
when using certain custom MPI-datatypes (see reproducer code).
The bug can be toggled by commenting/uncommenting line 11 in the .F90-file.
Even though all this is for MPI_Gather the same seems to go for MPI_Gatherv
I have verified the bad behaviour with several OpenMPI versions from 1.2.3 to
1.3b2. Correct behaviour has been observed on mvapich2 and PlatformMPI. Both
gfortran and ifort has been tried.
BUILD Build instructions
RUN Run instructions
mpi_gather_test.F90 Reproducer source code
4rank_bad_output.txt Bad output
4rank_expected_output.txt Good output
- text/plain attachment: BUILD
- text/plain attachment: RUN