29 #define SOA_SIMPLIFY_PARAMS 39 #ifdef SOA_SIMPLIFY_PARAMS 46 #if defined(NAMD_CUDA) || defined(NAMD_HIP) 54 CthAwakenPrio(thread, CK_QUEUEING_IFIFO,
PRIORITY_SIZE, &priority);
62 #if defined(NAMD_CUDA) || defined(NAMD_HIP) 65 int numberOfSteps,
int nbondstep,
int slowstep,
int maxForceUsed);
73 void updateDeviceData(
const int startup,
const int maxForceUsed,
const int doGlobal);
74 void doMigrationGPU(
const int startup,
const int doGlobal,
const int updatePatchMap);
79 const int doMigration,
82 const int maxForceNumber,
93 const double * __restrict recipMass,
94 const double * __restrict f_normal_x,
95 const double * __restrict f_normal_y,
96 const double * __restrict f_normal_z,
97 const double * __restrict f_nbond_x,
98 const double * __restrict f_nbond_y,
99 const double * __restrict f_nbond_z,
100 const double * __restrict f_slow_x,
101 const double * __restrict f_slow_y,
102 const double * __restrict f_slow_z,
103 double * __restrict vel_x,
104 double * __restrict vel_y,
105 double * __restrict vel_z,
114 const double * __restrict vel_x,
115 const double * __restrict vel_y,
116 const double * __restrict vel_z,
117 double * __restrict pos_x,
118 double * __restrict pos_y,
119 double * __restrict pos_z,
125 const int * __restrict hydrogenGroupSize,
126 const float * __restrict mass,
127 const double * __restrict vel_x,
128 const double * __restrict vel_y,
129 const double * __restrict vel_z,
135 const int * __restrict hydrogenGroupSize,
136 const float * __restrict mass,
137 const double * __restrict pos_x,
138 const double * __restrict pos_y,
139 const double * __restrict pos_z,
140 const double * __restrict vel_x,
141 const double * __restrict vel_y,
142 const double * __restrict vel_z,
143 const double * __restrict f_normal_x,
144 const double * __restrict f_normal_y,
145 const double * __restrict f_normal_z,
146 const double * __restrict f_nbond_x,
147 const double * __restrict f_nbond_y,
148 const double * __restrict f_nbond_z,
149 const double * __restrict f_slow_x,
150 const double * __restrict f_slow_y,
151 const double * __restrict f_slow_z,
161 const double * __restrict vel_x,
162 const double * __restrict vel_y,
163 const double * __restrict vel_z,
171 const float * __restrict langevinParam,
172 double * __restrict vel_x,
173 double * __restrict vel_y,
174 double * __restrict vel_z,
182 const float * __restrict langevinParam,
183 const float * __restrict langScalVelBBK2,
184 const float * __restrict langScalRandBBK2,
185 float * __restrict gaussrand_x,
186 float * __restrict gaussrand_y,
187 float * __restrict gaussrand_z,
188 double * __restrict vel_x,
189 double * __restrict vel_y,
190 double * __restrict vel_z,
197 const int * __restrict hydrogenGroupSize,
198 const float * __restrict mass,
199 double * __restrict pos_x,
200 double * __restrict pos_y,
201 double * __restrict pos_z,
208 const int * __restrict hydrogenGroupSize,
209 const float * __restrict mass,
210 double * __restrict pos_x,
211 double * __restrict pos_y,
212 double * __restrict pos_z,
213 double * __restrict vel_x,
214 double * __restrict vel_y,
215 double * __restrict vel_z,
228 void runComputeObjects(
int migration = 1,
int pairlists = 0,
int pressureStep = 0);
247 const BigReal timestep2,
const int ftag2,
const int useSaved2,
248 const BigReal timestep3,
const int ftag3,
const int useSaved3);
297 const BigReal,
const int,
const int,
const int);
314 #ifdef MEASURE_NAMD_WITH_PAPI 315 void papiMeasureBarrier(
int);
335 unsigned int priority;
339 #if (defined(NAMD_CUDA) || defined(NAMD_HIP)) && defined(SEQUENCER_SOA)
SubmitReduction * multigratorReduction
void rescaleVelocities(int)
void minimizationQuenchVelocity(void)
void tcoupleVelocities(BigReal, int)
void addMovDragToPosition(BigReal)
virtual void algorithm(void)
void langevinVelocitiesBBK2_SOA(BigReal timestep)
SubmitReduction * pressureProfileReduction
friend class SequencerCUDA
void scaleVelocities(const BigReal velScale)
void addVelocityToPosition(BigReal)
SubmitReduction * reduction
SubmitReduction * min_reduction
void maximumMove(BigReal)
void cycleBarrier(int, int)
void submitCollections_SOA(int step, int zeroVel=0)
void addRotDragToPosition(BigReal)
void saveForce(const int ftag=Results::normal)
void langevinVelocitiesBBK2(BigReal)
void monteCarloPressureControl(const int step, const int doMigration, const int doEnergy, const int doVirial, const int maxForceNumber, const int doGlobal)
void newMinimizeDirection(BigReal)
void newMinimizePosition(BigReal)
void langevinVelocitiesBBK1(BigReal)
void updateDevicePatchMap(int startup)
void rattle1(BigReal, int)
void rebalanceLoad(int timestep)
void addForceToMomentum_SOA(const double scaling, double dt_normal, double dt_nbond, double dt_slow, int maxForceNumber)
void minimizeMoveDownhill(BigReal fmax2)
void addForceToMomentum(BigReal, const int ftag=Results::normal, const int useSaved=0)
void submitReductions_SOA()
void addForceToMomentum3(const BigReal timestep1, const int ftag1, const int useSaved1, const BigReal timestep2, const int ftag2, const int useSaved2, const BigReal timestep3, const int ftag3, const int useSaved3)
void submitHalfstep_SOA()
void submitCollections(int step, int zeroVel=0)
void stochRescaleVelocities_SOA(int step)
void runComputeObjects_SOA(int migration, int pairlists, int step)
BigReal calcKineticEnergy()
void adaptTempUpdate(int)
void calcFixVirial(Tensor &fixVirialNormal, Tensor &fixVirialNbond, Tensor &fixVirialSlow, Vector &fixForceNormal, Vector &fixForceNbond, Vector &fixForceSlow)
void stochRescaleVelocities(int)
void rattle1_SOA(BigReal, int)
void constructDevicePatchMap()
void multigratorPressure(int step, int callNumber)
void berendsenPressure(int)
void submitMomentum(int step)
int rescaleVelocities_numTemps
void runComputeObjects(int migration=1, int pairlists=0, int pressureStep=0)
void rescaleaccelMD(int, int, int)
void initialize_integrate_CUDA_SOA(int scriptTask, int step, BigReal timestep, int numberOfSteps, int nbondstep, int slowstep, int maxForceUsed)
void clearDevicePatchMap()
void scalePositionsVelocities(const Tensor &posScale, const Tensor &velScale)
void doMigrationGPU(const int startup, const int doGlobal, const int updatePatchMap)
void langevinPiston_SOA(int step)
int berendsenPressure_count
void reassignVelocities(BigReal, int)
void langevinVelocitiesBBK1_SOA(BigReal timestep)
void runComputeObjectsCUDA(int doMigration, int doGlobal, int pairlists, int nstep, int startup)
void langevinVelocities(BigReal)
void hardWallDrude(BigReal, int)
void multigratorTemperature(int step, int callNumber)
void reinitVelocities(void)
int checkpoint_berendsenPressure_count
ControllerBroadcasts * broadcast
void maximumMove_SOA(const double dt, const double maxvel2)
CollectionMgr *const collection
void updateDeviceData(const int startup, const int maxForceUsed, const int doGlobal)
void newtonianVelocities(BigReal, const BigReal, const BigReal, const BigReal, const int, const int, const int)
void rescaleSoluteCharges(BigReal)
void addVelocityToPosition_SOA(const double dt)
#define SOA_SIMPLIFY_PARAMS
void submitMinimizeReductions(int, BigReal fmax2)
void correctMomentum(int step, BigReal drifttime)
void submitReductions(int)
void integrate_CUDA_SOA(int scriptTask)
SimParameters *const simParams
void rescaleVelocitiesByFactor(BigReal)
void berendsenPressure_SOA(int step)
void printDevicePatchMap()