Replace blocking with non-blocking receive in GPU PME coordinate receiver
commit6c0ab48c23a64aee18d443a2f9d62e1c87b12379
authorAlan Gray <alangraygerrit@gmail.com>
Fri, 1 Nov 2019 14:45:25 +0000 (1 07:45 -0700)
committerAlan Gray <alangraygerrit@gmail.com>
Fri, 15 Nov 2019 14:27:58 +0000 (15 15:27 +0100)
tree1db4aac14500182238c9302aaa85a9f9589769a0
parent1015b79806e2bb97a12690dbe2a79cd3b8f7a1f8
Replace blocking with non-blocking receive in GPU PME coordinate receiver

Replaces MPI_Recv with MPI_Irecv in original coordinate receiver
method, and adds associated method containing MPI_Waitall which is
called to wait on data completion across all PP ranks.

Implements part of #3158

Change-Id: Ifd152973e4d9a4da53c0541e591b41d29be173bb
src/gromacs/ewald/pme_coordinate_receiver_gpu.h
src/gromacs/ewald/pme_coordinate_receiver_gpu_impl.cpp
src/gromacs/ewald/pme_coordinate_receiver_gpu_impl.cu
src/gromacs/ewald/pme_coordinate_receiver_gpu_impl.h
src/gromacs/ewald/pme_only.cpp