#include "gromacs/math/vectypes.h"
#include "gromacs/utility/gmxmpi.h"
-class DeviceStream;
+class GpuEventSynchronizer;
/*! \libinternal
* \brief Contains information about the PP ranks that partner this PME rank. */
public:
/*! \brief Creates PME GPU Force sender object
- * \param[in] pmeStream CUDA stream used for PME computations
+ * \param[in] pmeForcesReady Event synchronizer marked when PME forces are ready on the GPU
* \param[in] comm Communicator used for simulation
* \param[in] ppRanks List of PP ranks
*/
- PmeForceSenderGpu(const DeviceStream& pmeStream, MPI_Comm comm, gmx::ArrayRef<PpRanks> ppRanks);
+ PmeForceSenderGpu(GpuEventSynchronizer* pmeForcesReady, MPI_Comm comm, gmx::ArrayRef<PpRanks> ppRanks);
~PmeForceSenderGpu();
/*! \brief
void sendForceBufferAddressToPpRanks(rvec* d_f);
/*! \brief
- * Send PP data to PP rank
+ * Send force synchronizer to PP rank
* \param[in] ppRank PP rank to receive data
*/
void sendFToPpCudaDirect(int ppRank);