3 #if __cplusplus < 201103L 13 #include "PatchData.decl.h" 32 #include <hip/hip_runtime.h> 37 #ifdef NODEGROUP_FORCE_REGISTER 38 #ifdef NAMD_NCCL_ALLREDUCE 61 cudaStream_t nbond_stream;
63 size_t size_nb_datoms;
82 int* slow_patchPositions;
83 int slow_patchPositionsSize;
84 int* slow_pencilPatchIndex;
85 int slow_pencilPatchIndexSize;
89 int* s_datoms_partition;
94 int* d_globalToLocalID;
95 int* d_patchToDeviceMap;
97 std::vector<HomePatch*> patches;
100 std::vector<CudaLocalRecord> h_localPatches;
103 std::vector<CudaPeerRecord> h_peerPatches;
108 int numPatchesHomeAndProxy;
124 #if defined(NAMD_CUDA) || defined(NAMD_HIP) 164 #ifdef NODEGROUP_FORCE_REGISTER 165 int** h_soa_sortOrder;
168 int4** h_soa_migrationDestination;
172 int** h_soa_partition;
176 bool** h_devHasForces;
177 unsigned int** d_queues;
178 unsigned int* d_queueCounters;
179 std::vector<int> migrationFlagPerDevice;
180 std::vector<int> tupleReallocationFlagPerDevice;
181 std::vector<int> atomReallocationFlagPerDevice;
183 std::atomic<int> maxNumBonds;
184 std::atomic<int> maxNumAngles;
185 std::atomic<int> maxNumDihedrals;
186 std::atomic<int> maxNumImpropers;
187 std::atomic<int> maxNumModifiedExclusions;
188 std::atomic<int> maxNumExclusions;
189 std::atomic<int> maxNumCrossterms;
190 std::vector<int> devicePatchMapFlag;
191 #ifdef NAMD_NCCL_ALLREDUCE 204 ComputeBondedCUDA **cudaBondedList;
207 std::vector<DeviceData> devData;
209 CmiNodeLock nodeLock;
210 std::vector<int> cbStore;
211 std::atomic<int> suspendCounter;
213 std::atomic<int> updateCounter;
217 #endif // PATCHDATA_H
Broadcast object for intra-node GPU-resident broadcasts.
NodeReduction * reduction
NodeReduction * reductionBackend
cudaTensor * d_positionRescaleFactor
NodeReduction * reductionBackendSave
CollectionMaster * ptrCollectionMaster
cudaTensor * d_langevinPiston_strainRate
cudaTensor * d_langevinPiston_origStrainRate
cudaTensor * d_strainRate_old
NodeBroadcast * nodeBroadcast
void setDeviceKernelUpdateCounter()