Gromacs  2026.0-dev-20250519-bfab4c8
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
List of all members | Public Member Functions | Public Attributes | Static Public Attributes
gmxNvshmemHandle Class Reference

#include <gromacs/gpu_utils/nvshmem_utils.h>

Description

Assists GPU halo exchange with NVSHMEM.

Public Member Functions

void allocateAndInitSignalBufs (int totalDimsAndPulses, const DeviceContext &deviceContext_, const DeviceStream *localStream)
 Handles NVSHEM signal buffer initialization. More...
 

Public Attributes

int ppHaloExPerSyncBufSize_ = 0
 Size for the each of the 3 signal buffers used for PP Halo exchange.
 
int ppHaloExSyncBufSize_ = -1
 Allocation size for the signal buffers used for PP Halo exchange.
 
int ppHaloExSyncBufCapacity_ = -1
 Allocation capacity for the signal buffers used for PP Halo exchange.
 
DeviceBuffer< uint64_t > d_ppHaloExSyncBase_
 

Static Public Attributes

static const int numOfPpHaloExSyncBufs = 3
 Number of signal buffers types used for PP Halo exchange.
 

Member Function Documentation

void gmxNvshmemHandle::allocateAndInitSignalBufs ( int  totalDimsAndPulses,
const DeviceContext &  deviceContext_,
const DeviceStream localStream 
)

Handles NVSHEM signal buffer initialization.

Allocates and initializes the signal buffers used in NVSHMEM enabled PP Halo exchange.


The documentation for this class was generated from the following files: