Gromacs
2026.0-dev-20241213-9ac17bb
|
#include <gromacs/domdec/gpuhaloexchange_impl_gpu.h>
Struct encapsulating data for NVSHMEM Enabled GPU Halo Exchange.
Public Attributes | |
int | putAtomOffsetInReceiverRankXBuf_ = 0 |
offset of remote PP rank coord buffer used for nvshmem_put | |
DeviceBuffer< uint64_t > | d_signalSenderRankX_ = nullptr |
signal object used for notifying rank which will produce/put the halo coordinates | |
DeviceBuffer< uint64_t > | d_signalReceiverRankF_ = nullptr |
signal object used for notifying rank which will consume the halo forces | |
uint64_t | signalReceiverRankFCounter_ = 0 |
Forces communication signal counter, used to synchronize with the send-to(put) | |
DeviceBuffer< uint64_t > | d_signalReceiverRankX_ = nullptr |
signal object used for notifying rank which will consume the halo coordinates | |
uint64_t | signalReceiverRankXCounter_ = 0 |
Coordinates communication signal counter, used to synchronize with the send-to(put) | |
uint32_t | arriveWaitBarrierVal_ = 0 |
value to initialize the arrive-wait barrier, this is grid size of X kernel. | |
uint32_t | gridDimX_ = 0 |
Grid size of X kernel. | |
int | signalObjOffset_ = 0 |
offset from which signal object for the given pulse/dim should be used. | |
Static Public Attributes | |
static const int | c_nvshmemThreadsPerBlock = 256 * 4 |
Thread block size for NVSHMEM based X and F kernels. | |