NAMD
CudaComputeGBISKernel.h
Go to the documentation of this file.
1 #ifndef CUDACOMPUTEGBISKERNEL_H
2 #define CUDACOMPUTEGBISKERNEL_H
3 
4 #include "CudaTileListKernel.h"
6 
7 #if defined(NAMD_CUDA) || defined(NAMD_HIP)
8 
10 private:
11 
12  int deviceID;
13 
14  float* intRad0;
15  size_t intRad0Size;
16 
17  float* intRadS;
18  size_t intRadSSize;
19 
20  float* psiSum;
21  size_t psiSumSize;
22 
23  float* bornRad;
24  size_t bornRadSize;
25 
26  float* dEdaSum;
27  size_t dEdaSumSize;
28 
29  float* dHdrPrefix;
30  size_t dHdrPrefixSize;
31 
32 public:
33  CudaComputeGBISKernel(int deviceID);
35 
36  void updateIntRad(const int atomStorageSize, float* intRad0H, float* intRadSH,
37  cudaStream_t stream);
38 
39  void updateBornRad(const int atomStorageSize, float* bornRadH, cudaStream_t stream);
40 
41  void update_dHdrPrefix(const int atomStorageSize, float* dHdrPrefixH, cudaStream_t stream);
42 
43  void GBISphase1(CudaTileListKernel& tlKernel, const int atomStorageSize,
44  const float3 lata, const float3 latb, const float3 latc, const float a_cut, float* h_psiSum,
45  cudaStream_t stream);
46 
47  void GBISphase2(CudaTileListKernel& tlKernel, const int atomStorageSize,
48  const bool doEnergy, const bool doSlow,
49  const float3 lata, const float3 latb, const float3 latc,
50  const float r_cut, const float scaling, const float kappa, const float smoothDist,
51  const float epsilon_p, const float epsilon_s,
52  float4* d_forces,
53  float* h_dEdaSum, cudaStream_t stream);
54 
55  void GBISphase3(CudaTileListKernel& tlKernel, const int atomStorageSize,
56  const float3 lata, const float3 latb, const float3 latc, const float a_cut,
57  float4* d_forces,
58  cudaStream_t stream);
59 
60 };
61 
62 #endif // NAMD_CUDA
63 #endif //CUDACOMPUTEGBISKERNEL_H
void updateIntRad(const int atomStorageSize, float *intRad0H, float *intRadSH, cudaStream_t stream)
void GBISphase2(CudaTileListKernel &tlKernel, const int atomStorageSize, const bool doEnergy, const bool doSlow, const float3 lata, const float3 latb, const float3 latc, const float r_cut, const float scaling, const float kappa, const float smoothDist, const float epsilon_p, const float epsilon_s, float4 *d_forces, float *h_dEdaSum, cudaStream_t stream)
void GBISphase3(CudaTileListKernel &tlKernel, const int atomStorageSize, const float3 lata, const float3 latb, const float3 latc, const float a_cut, float4 *d_forces, cudaStream_t stream)
void updateBornRad(const int atomStorageSize, float *bornRadH, cudaStream_t stream)
CudaComputeGBISKernel(int deviceID)
void update_dHdrPrefix(const int atomStorageSize, float *dHdrPrefixH, cudaStream_t stream)
void GBISphase1(CudaTileListKernel &tlKernel, const int atomStorageSize, const float3 lata, const float3 latb, const float3 latc, const float a_cut, float *h_psiSum, cudaStream_t stream)