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 181 double** h_soa_pos_x;
182 double** h_soa_pos_y;
183 double** h_soa_pos_z;
185 double** h_soa_vel_x;
186 double** h_soa_vel_y;
187 double** h_soa_vel_z;
189 float** h_soa_charge;
192 int** h_soa_sortOrder;
193 int** h_soa_unsortOrder;
196 double3** h_soa_patchCenter;
197 int4** h_soa_migrationDestination;
198 int** h_soa_sortSoluteIndex;
203 int** h_soa_partition;
207 bool** h_devHasForces;
208 unsigned int** d_queues;
209 unsigned int* d_queueCounters;
210 std::vector<int> migrationFlagPerDevice;
211 std::vector<int> tupleReallocationFlagPerDevice;
212 std::vector<int> atomReallocationFlagPerDevice;
214 std::atomic<int> maxNumBonds;
215 std::atomic<int> maxNumAngles;
216 std::atomic<int> maxNumDihedrals;
217 std::atomic<int> maxNumImpropers;
218 std::atomic<int> maxNumModifiedExclusions;
219 std::atomic<int> maxNumExclusions;
220 std::atomic<int> maxNumCrossterms;
221 std::vector<int> devicePatchMapFlag;
222 #ifdef NAMD_NCCL_ALLREDUCE 235 ComputeBondedCUDA **cudaBondedList;
238 std::vector<DeviceData> devData;
240 CmiNodeLock nodeLock;
241 std::vector<int> cbStore;
242 std::atomic<int> suspendCounter;
244 std::atomic<int> updateCounter;
248 #endif // PATCHDATA_H
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()