NAMD
|
#include <CudaComputeNonbondedKernel.h>
Public Member Functions | |
CudaComputeNonbondedKernel (int deviceID, CudaNonbondedTables &cudaNonbondedTables, bool doStreaming) | |
~CudaComputeNonbondedKernel () | |
void | updateVdwTypesExcl (const int atomStorageSize, const int *h_vdwTypes, const int2 *h_exclIndexMaxDiff, const int *h_atomIndex, cudaStream_t stream) |
void | nonbondedForce (CudaTileListKernel &tlKernel, const int atomStorageSize, const bool doPairlist, const bool doEnergy, const bool doVirial, const bool doSlow, const float3 lata, const float3 latb, const float3 latc, const float4 *h_xyzq, const float cutoff2, float4 *d_forces, float4 *d_forcesSlow, float4 *h_forces, float4 *h_forcesSlow, cudaStream_t stream) |
void | reduceVirialEnergy (CudaTileListKernel &tlKernel, const int atomStorageSize, const bool doEnergy, const bool doVirial, const bool doSlow, const bool doGBIS, float4 *d_forces, float4 *d_forcesSlow, VirialEnergy *d_virialEnergy, cudaStream_t stream) |
void | getVirialEnergy (VirialEnergy *h_virialEnergy, cudaStream_t stream) |
void | bindExclusions (int numExclusions, unsigned int *exclusion_bits) |
int * | getPatchReadyQueue () |
void | reallocate_forceSOA (int atomStorageSize) |
Definition at line 9 of file CudaComputeNonbondedKernel.h.
CudaComputeNonbondedKernel::CudaComputeNonbondedKernel | ( | int | deviceID, |
CudaNonbondedTables & | cudaNonbondedTables, | ||
bool | doStreaming | ||
) |
Definition at line 1155 of file CudaComputeNonbondedKernel.cu.
References cudaCheck.
CudaComputeNonbondedKernel::~CudaComputeNonbondedKernel | ( | ) |
Definition at line 1196 of file CudaComputeNonbondedKernel.cu.
References cudaCheck.
void CudaComputeNonbondedKernel::bindExclusions | ( | int | numExclusions, |
unsigned int * | exclusion_bits | ||
) |
Definition at line 1461 of file CudaComputeNonbondedKernel.cu.
References constExclusions, cudaCheck, and MAX_CONST_EXCLUSIONS.
int * CudaComputeNonbondedKernel::getPatchReadyQueue | ( | ) |
Definition at line 1226 of file CudaComputeNonbondedKernel.cu.
References NAMD_die().
Referenced by CudaComputeNonbonded::launchWork().
void CudaComputeNonbondedKernel::getVirialEnergy | ( | VirialEnergy * | h_virialEnergy, |
cudaStream_t | stream | ||
) |
void CudaComputeNonbondedKernel::nonbondedForce | ( | CudaTileListKernel & | tlKernel, |
const int | atomStorageSize, | ||
const bool | doPairlist, | ||
const bool | doEnergy, | ||
const bool | doVirial, | ||
const bool | doSlow, | ||
const float3 | lata, | ||
const float3 | latb, | ||
const float3 | latc, | ||
const float4 * | h_xyzq, | ||
const float | cutoff2, | ||
float4 * | d_forces, | ||
float4 * | d_forcesSlow, | ||
float4 * | h_forces, | ||
float4 * | h_forcesSlow, | ||
cudaStream_t | stream | ||
) |
Definition at line 1250 of file CudaComputeNonbondedKernel.cu.
References CALL, CudaTileListKernel::clearTileListStat(), cudaCheck, deviceCUDA, CudaTileListKernel::get_xyzq(), DeviceCUDA::getMaxNumBlocks(), CudaTileListKernel::getNumPatches(), CudaTileListKernel::getNumTileLists(), CudaTileListKernel::getOutputOrder(), NAMD_die(), NONBONDKERNEL_NUM_WARP, numPatches, CudaTileListKernel::setTileListVirialEnergyLength(), and stream.
void CudaComputeNonbondedKernel::reallocate_forceSOA | ( | int | atomStorageSize | ) |
Definition at line 1184 of file CudaComputeNonbondedKernel.cu.
void CudaComputeNonbondedKernel::reduceVirialEnergy | ( | CudaTileListKernel & | tlKernel, |
const int | atomStorageSize, | ||
const bool | doEnergy, | ||
const bool | doVirial, | ||
const bool | doSlow, | ||
const bool | doGBIS, | ||
float4 * | d_forces, | ||
float4 * | d_forcesSlow, | ||
VirialEnergy * | d_virialEnergy, | ||
cudaStream_t | stream | ||
) |
Definition at line 1418 of file CudaComputeNonbondedKernel.cu.
References ATOMIC_BINS, cudaCheck, deviceCUDA, CudaTileListKernel::get_xyzq(), DeviceCUDA::getMaxNumBlocks(), CudaTileListKernel::getTileListVirialEnergy(), CudaTileListKernel::getTileListVirialEnergyGBISLength(), CudaTileListKernel::getTileListVirialEnergyLength(), REDUCEGBISENERGYKERNEL_NUM_WARP, REDUCENONBONDEDVIRIALKERNEL_NUM_WARP, REDUCEVIRIALENERGYKERNEL_NUM_WARP, stream, and WARPSIZE.
Referenced by CudaComputeNonbonded::launchWork().
void CudaComputeNonbondedKernel::updateVdwTypesExcl | ( | const int | atomStorageSize, |
const int * | h_vdwTypes, | ||
const int2 * | h_exclIndexMaxDiff, | ||
const int * | h_atomIndex, | ||
cudaStream_t | stream | ||
) |
Definition at line 1214 of file CudaComputeNonbondedKernel.cu.
References OVERALLOC, and stream.