NAMD
|
#include <ComputeCUDAMgr.h>
Public Member Functions | |
ComputeCUDAMgr () | |
ComputeCUDAMgr (CkMigrateMessage *) | |
~ComputeCUDAMgr () | |
void | initialize (CkQdMsg *msg) |
void | initialize_devices (CkQdMsg *msg) |
void | update () |
CudaComputeNonbonded * | createCudaComputeNonbonded (ComputeID c) |
CudaComputeNonbonded * | getCudaComputeNonbonded () |
CudaPmeOneDevice * | createCudaPmeOneDevice () |
CudaPmeOneDevice * | getCudaPmeOneDevice () |
std::shared_ptr< CudaGlobalMasterServer > | createCudaGlobalMaster () |
std::shared_ptr< CudaGlobalMasterServer > | getCudaGlobalMaster () |
Static Public Member Functions | |
static ComputeCUDAMgr * | getComputeCUDAMgr () |
Public Attributes | |
double3 ** | curSMDCOM |
double3 *** | curGrp1COM |
double3 *** | curGrp2COM |
std::atomic< int > | reducerSMDDevice |
std::atomic< int > | reducerGroupRestraintDevice |
Definition at line 16 of file ComputeCUDAMgr.h.
ComputeCUDAMgr::ComputeCUDAMgr | ( | ) |
Definition at line 18 of file ComputeCUDAMgr.C.
ComputeCUDAMgr::ComputeCUDAMgr | ( | CkMigrateMessage * | ) |
ComputeCUDAMgr::~ComputeCUDAMgr | ( | ) |
CudaComputeNonbonded * ComputeCUDAMgr::createCudaComputeNonbonded | ( | ComputeID | c | ) |
Definition at line 261 of file ComputeCUDAMgr.C.
References SimParameters::CUDASOAintegrate, deviceCUDA, SimParameters::GBISOn, DeviceCUDA::getDeviceID(), DeviceCUDA::getNoStreaming(), NAMD_bug(), Node::Object(), and Node::simParameters.
Referenced by createCudaComputeNonbonded().
std::shared_ptr< CudaGlobalMasterServer > ComputeCUDAMgr::createCudaGlobalMaster | ( | ) |
Definition at line 316 of file ComputeCUDAMgr.C.
References deviceCUDA, endi(), DeviceCUDA::getGlobalDevice(), iINFO(), iout, Node::Object(), Node::simParameters, and simParams.
Referenced by ComputeMgr::recvCudaGlobalMasterCreateMsg().
CudaPmeOneDevice * ComputeCUDAMgr::createCudaPmeOneDevice | ( | ) |
Definition at line 225 of file ComputeCUDAMgr.C.
References PmeGrid::block1, PmeGrid::block2, PmeGrid::block3, deviceCUDA, PmeGrid::dim2, PmeGrid::dim3, DeviceCUDA::getPmeDevice(), DeviceCUDA::getPmeDeviceIndex(), PmeGrid::K1, PmeGrid::K2, PmeGrid::K3, Node::Object(), PmeGrid::order, Node::simParameters, simParams, PmeGrid::xBlocks, PmeGrid::yBlocks, and PmeGrid::zBlocks.
|
static |
Definition at line 216 of file ComputeCUDAMgr.C.
References NAMD_bug().
Referenced by createCudaComputeNonbonded(), getCudaComputeNonbonded(), ComputeMgr::recvCudaGlobalMasterCreateMsg(), ComputeMgr::recvCudaGlobalMasterRemoveMsg(), ComputeMgr::recvCudaGlobalMasterUpdateMsg(), and SimParameters::scriptSet().
CudaComputeNonbonded * ComputeCUDAMgr::getCudaComputeNonbonded | ( | ) |
Definition at line 276 of file ComputeCUDAMgr.C.
References deviceCUDA, DeviceCUDA::getDeviceID(), and NAMD_bug().
Referenced by getCudaComputeNonbonded().
std::shared_ptr< CudaGlobalMasterServer > ComputeCUDAMgr::getCudaGlobalMaster | ( | ) |
Definition at line 312 of file ComputeCUDAMgr.C.
Referenced by ComputeMgr::recvCudaGlobalMasterCreateMsg(), ComputeMgr::recvCudaGlobalMasterRemoveMsg(), and ComputeMgr::recvCudaGlobalMasterUpdateMsg().
CudaPmeOneDevice * ComputeCUDAMgr::getCudaPmeOneDevice | ( | ) |
Definition at line 254 of file ComputeCUDAMgr.C.
void ComputeCUDAMgr::initialize | ( | CkQdMsg * | msg | ) |
Definition at line 63 of file ComputeCUDAMgr.C.
References cudaCheck, curGrp1COM, curGrp2COM, curSMDCOM, deviceCUDA, DeviceCUDA::getDeviceCount(), DeviceCUDA::getDeviceIDbyRank(), DeviceCUDA::getNumDevice(), DeviceCUDA::isGpuReservedPme(), Node::Object(), Node::simParameters, and simParams.
void ComputeCUDAMgr::initialize_devices | ( | CkQdMsg * | msg | ) |
void ComputeCUDAMgr::update | ( | ) |
Definition at line 207 of file ComputeCUDAMgr.C.
References deviceCUDA, DeviceCUDA::getDeviceIDbyRank(), DeviceCUDA::getNumDevice(), and NAMD_bug().
Referenced by SimParameters::scriptSet().
double3*** ComputeCUDAMgr::curGrp1COM |
Host-mapped center of mass of all atoms in each Grp1
Definition at line 37 of file ComputeCUDAMgr.h.
Referenced by initialize(), and ~ComputeCUDAMgr().
double3*** ComputeCUDAMgr::curGrp2COM |
Host-mapped center of mass of all atoms in each Grp2
Definition at line 38 of file ComputeCUDAMgr.h.
Referenced by initialize(), and ~ComputeCUDAMgr().
double3** ComputeCUDAMgr::curSMDCOM |
center of mass of atoms in SMD, one per device
Definition at line 36 of file ComputeCUDAMgr.h.
Referenced by initialize(), and ~ComputeCUDAMgr().
std::atomic<int> ComputeCUDAMgr::reducerGroupRestraintDevice |
which device reports extForce and energy
Definition at line 40 of file ComputeCUDAMgr.h.
std::atomic<int> ComputeCUDAMgr::reducerSMDDevice |
Definition at line 39 of file ComputeCUDAMgr.h.