Bug fix for event passed to GPU comm features
authorAlan Gray <alangraygerrit@gmail.com>
Mon, 28 Oct 2019 09:07:46 +0000 (02:07 -0700)
committerMark Abraham <mark.j.abraham@gmail.com>
Thu, 31 Oct 2019 15:49:36 +0000 (16:49 +0100)
commit1390f5ac4e05461f0a0295b34ef1985de8aaee11
tree2408df834b5a090bc24a3b9c91766e65a10ec9a9
parentde65e7e32ce5412df17e015326cba8e92bd410aa
Bug fix for event passed to GPU comm features

The GPU coordinate halo exchange and coordinate PME-PP transfer were
waiting on an event signalling that the coordinates are available on
the GPU that lives in the NB class, but the new state propagator
feature instead records a different event for this purpose, breaking
the dependency. This change fixes the bug by instead pass the state
propagator event as a dependency to these methods. It needs to be done
every step rather than stored in the class since it can change
depending on the type of step.

Change-Id: I7ea048c6f303192c1310d6b5593227c0ad9a81d0
13 files changed:
src/gromacs/domdec/gpuhaloexchange.h
src/gromacs/domdec/gpuhaloexchange_impl.cpp
src/gromacs/domdec/gpuhaloexchange_impl.cu
src/gromacs/domdec/gpuhaloexchange_impl.cuh
src/gromacs/ewald/pme.h
src/gromacs/ewald/pme_pp.cpp
src/gromacs/ewald/pme_pp_comm_gpu.h
src/gromacs/ewald/pme_pp_comm_gpu_impl.cpp
src/gromacs/ewald/pme_pp_comm_gpu_impl.cu
src/gromacs/ewald/pme_pp_comm_gpu_impl.h
src/gromacs/mdlib/forcerec.cpp
src/gromacs/mdlib/sim_util.cpp
src/gromacs/mdrun/runner.cpp