NAMD
|
#include <ComputeBondedCUDAKernel.h>
Classes | |
struct | BondedVirial |
Public Member Functions | |
double * | getForces () |
ComputeBondedCUDAKernel (int deviceID, CudaNonbondedTables &cudaNonbondedTables) | |
~ComputeBondedCUDAKernel () | |
void | update (const int numBondsIn, const int numAnglesIn, const int numDihedralsIn, const int numImpropersIn, const int numModifiedExclusionsIn, const int numExclusionsIn, const int numCrosstermsIn, const char *h_tupleData, cudaStream_t stream) |
void | setTupleCounts (const TupleCounts count) |
size_t | reallocateTupleBuffer (const TupleCounts countIn, cudaStream_t stream) |
void | updateAtomBuffer (const int atomStorageSize, cudaStream_t stream) |
TupleCounts | getTupleCounts () |
TupleData | getData () |
void | setupBondValues (int numBondValues, CudaBondValue *h_bondValues) |
void | setupAngleValues (int numAngleValues, CudaAngleValue *h_angleValues) |
void | setupDihedralValues (int numDihedralValues, CudaDihedralValue *h_dihedralValues) |
void | setupImproperValues (int numImproperValues, CudaDihedralValue *h_improperValues) |
void | setupCrosstermValues (int numCrosstermValues, CudaCrosstermValue *h_crosstermValues) |
int | getForceStride (const int atomStorageSize) |
int | getForceSize (const int atomStorageSize) |
int | getAllForceSize (const int atomStorageSize, const bool doSlow) |
float4 * | getAtomBuffer () |
void | bondedForce (const double scale14, const int atomStorageSize, const bool doEnergy, const bool doVirial, const bool doSlow, const bool doTable, const float3 lata, const float3 latb, const float3 latc, const float cutoff2, const float r2_delta, const int r2_delta_expc, const CudaNBConstants nbConstants, const float4 *h_xyzq, double *h_forces, double *h_energies, bool atomsChanged, bool CUDASOAintegratorOn, bool useDeviceMigration, cudaStream_t stream) |
void | updateCudaAlchFlags (const CudaAlchFlags &h_cudaAlchFlags) |
void | updateCudaAlchParameters (const CudaAlchParameters *h_cudaAlchParameters, cudaStream_t stream) |
void | updateCudaAlchLambdas (const CudaAlchLambdas *h_cudaAlchLambdas, cudaStream_t stream) |
Static Public Member Functions | |
static int | warpAlign (const int n) |
Static Public Attributes | |
static constexpr float | kTupleOveralloc = 1.4f |
Definition at line 21 of file ComputeBondedCUDAKernel.h.
anonymous enum |
Definition at line 25 of file ComputeBondedCUDAKernel.h.
ComputeBondedCUDAKernel::ComputeBondedCUDAKernel | ( | int | deviceID, |
CudaNonbondedTables & | cudaNonbondedTables | ||
) |
ComputeBondedCUDAKernel::~ComputeBondedCUDAKernel | ( | ) |
void ComputeBondedCUDAKernel::bondedForce | ( | const double | scale14, |
const int | atomStorageSize, | ||
const bool | doEnergy, | ||
const bool | doVirial, | ||
const bool | doSlow, | ||
const bool | doTable, | ||
const float3 | lata, | ||
const float3 | latb, | ||
const float3 | latc, | ||
const float | cutoff2, | ||
const float | r2_delta, | ||
const int | r2_delta_expc, | ||
const CudaNBConstants | nbConstants, | ||
const float4 * | h_xyzq, | ||
double * | h_forces, | ||
double * | h_energies, | ||
bool | atomsChanged, | ||
bool | CUDASOAintegratorOn, | ||
bool | useDeviceMigration, | ||
cudaStream_t | stream | ||
) |
int ComputeBondedCUDAKernel::getAllForceSize | ( | const int | atomStorageSize, |
const bool | doSlow | ||
) |
|
inline |
Definition at line 176 of file ComputeBondedCUDAKernel.h.
TupleData ComputeBondedCUDAKernel::getData | ( | ) |
|
inline |
Definition at line 69 of file ComputeBondedCUDAKernel.h.
int ComputeBondedCUDAKernel::getForceSize | ( | const int | atomStorageSize | ) |
int ComputeBondedCUDAKernel::getForceStride | ( | const int | atomStorageSize | ) |
TupleCounts ComputeBondedCUDAKernel::getTupleCounts | ( | ) |
size_t ComputeBondedCUDAKernel::reallocateTupleBuffer | ( | const TupleCounts | countIn, |
cudaStream_t | stream | ||
) |
void ComputeBondedCUDAKernel::setTupleCounts | ( | const TupleCounts | count | ) |
void ComputeBondedCUDAKernel::setupAngleValues | ( | int | numAngleValues, |
CudaAngleValue * | h_angleValues | ||
) |
void ComputeBondedCUDAKernel::setupBondValues | ( | int | numBondValues, |
CudaBondValue * | h_bondValues | ||
) |
void ComputeBondedCUDAKernel::setupCrosstermValues | ( | int | numCrosstermValues, |
CudaCrosstermValue * | h_crosstermValues | ||
) |
void ComputeBondedCUDAKernel::setupDihedralValues | ( | int | numDihedralValues, |
CudaDihedralValue * | h_dihedralValues | ||
) |
void ComputeBondedCUDAKernel::setupImproperValues | ( | int | numImproperValues, |
CudaDihedralValue * | h_improperValues | ||
) |
void ComputeBondedCUDAKernel::update | ( | const int | numBondsIn, |
const int | numAnglesIn, | ||
const int | numDihedralsIn, | ||
const int | numImpropersIn, | ||
const int | numModifiedExclusionsIn, | ||
const int | numExclusionsIn, | ||
const int | numCrosstermsIn, | ||
const char * | h_tupleData, | ||
cudaStream_t | stream | ||
) |
void ComputeBondedCUDAKernel::updateAtomBuffer | ( | const int | atomStorageSize, |
cudaStream_t | stream | ||
) |
void ComputeBondedCUDAKernel::updateCudaAlchFlags | ( | const CudaAlchFlags & | h_cudaAlchFlags | ) |
void ComputeBondedCUDAKernel::updateCudaAlchLambdas | ( | const CudaAlchLambdas * | h_cudaAlchLambdas, |
cudaStream_t | stream | ||
) |
void ComputeBondedCUDAKernel::updateCudaAlchParameters | ( | const CudaAlchParameters * | h_cudaAlchParameters, |
cudaStream_t | stream | ||
) |
|
inlinestatic |
|
static |
Definition at line 141 of file ComputeBondedCUDAKernel.h.