NAMD
|
#include <Compute.h>
Public Member Functions | |
Compute (ComputeID) | |
int | type () |
virtual | ~Compute () |
void | setNumPatches (int n) |
int | getNumPatches () |
virtual void | initialize () |
virtual void | atomUpdate () |
virtual void | patchReady (PatchID, int doneMigration, int seq) |
virtual int | noWork () |
virtual void | doWork () |
virtual void | finishPatch (int) |
int | sequence (void) |
int | priority (void) |
int | getGBISPhase (void) |
virtual void | gbisP2PatchReady (PatchID, int seq) |
virtual void | gbisP3PatchReady (PatchID, int seq) |
Public Attributes | |
const ComputeID | cid |
LDObjHandle | ldObjHandle |
LocalWorkMsg *const | localWorkMsg |
Protected Member Functions | |
void | enqueueWork () |
Protected Attributes | |
int | computeType |
int | basePriority |
int | gbisPhase |
int | gbisPhasePriority [3] |
Compute::Compute | ( | ComputeID | c | ) |
Definition at line 37 of file Compute.C.
References computeType, gbisPhasePriority, LdbIdField(), ldObjHandle, ComputeMap::Object(), and ComputeMap::type().
|
virtual |
|
inlinevirtual |
Reimplemented in ComputeHomeTuples< T, S, P >, ComputeHomeTuples< AnisoElem, Aniso, AnisoValue >, ComputeHomeTuples< AngleElem, Angle, AngleValue >, ComputeHomeTuples< GromacsPairElem, GromacsPair, GromacsPairValue >, ComputeHomeTuples< ExclElem, Exclusion, int >, ComputeHomeTuples< DihedralElem, Dihedral, DihedralValue >, ComputeHomeTuples< ImproperElem, Improper, ImproperValue >, ComputeHomeTuples< BondElem, Bond, BondValue >, ComputeHomeTuples< CrosstermElem, Crossterm, CrosstermValue >, ComputeHomeTuples< TholeElem, Thole, TholeValue >, CudaComputeNonbonded, ComputeLCPO, ComputeHomePatches, ComputePme, ComputeHomePatch, ComputePatchPair, ComputePatch, and ComputePmeCUDA.
Definition at line 59 of file Compute.h.
Referenced by ComputeHomePatches::atomUpdate(), and patchReady().
|
virtual |
Reimplemented in ComputeHomeTuples< T, S, P >, ComputeHomeTuples< AnisoElem, Aniso, AnisoValue >, ComputeHomeTuples< AngleElem, Angle, AngleValue >, ComputeHomeTuples< GromacsPairElem, GromacsPair, GromacsPairValue >, ComputeHomeTuples< ExclElem, Exclusion, int >, ComputeHomeTuples< DihedralElem, Dihedral, DihedralValue >, ComputeHomeTuples< ImproperElem, Improper, ImproperValue >, ComputeHomeTuples< BondElem, Bond, BondValue >, ComputeHomeTuples< CrosstermElem, Crossterm, CrosstermValue >, ComputeHomeTuples< TholeElem, Thole, TholeValue >, ComputeSelfTuples< T, S, P >, ComputeSelfTuples< AnisoElem, Aniso, AnisoValue >, ComputeSelfTuples< AngleElem, Angle, AngleValue >, ComputeSelfTuples< GromacsPairElem, GromacsPair, GromacsPairValue >, ComputeSelfTuples< ExclElem, Exclusion, int >, ComputeSelfTuples< DihedralElem, Dihedral, DihedralValue >, ComputeSelfTuples< ImproperElem, Improper, ImproperValue >, ComputeSelfTuples< BondElem, Bond, BondValue >, ComputeSelfTuples< CrosstermElem, Crossterm, CrosstermValue >, ComputeSelfTuples< TholeElem, Thole, TholeValue >, CudaComputeNonbonded, ComputeQM, ComputeLCPO, ComputeEwald, ComputeMoa, ComputePme, ComputeGlobal, ComputeHomePatch, ComputePatchPair, ComputePatch, ComputeGBISser, ComputeMsm, ComputeTclBC, ComputePmeCUDA, ComputeExt, ComputeFmmSerial, ComputeFullDirect, ComputeLjPmeSerial, and ComputeMsmSerial.
Definition at line 120 of file Compute.C.
References DebugM.
Referenced by WorkDistrib::enqueueAngles(), WorkDistrib::enqueueAniso(), WorkDistrib::enqueueBonds(), WorkDistrib::enqueueCrossterms(), WorkDistrib::enqueueCUDA(), WorkDistrib::enqueueCUDAP2(), WorkDistrib::enqueueCUDAP3(), WorkDistrib::enqueueDihedrals(), WorkDistrib::enqueueExcls(), WorkDistrib::enqueueGromacsPair(), WorkDistrib::enqueueImpropers(), WorkDistrib::enqueueLCPO(), WorkDistrib::enqueueMIC(), WorkDistrib::enqueuePme(), WorkDistrib::enqueueSelfA1(), WorkDistrib::enqueueSelfA2(), WorkDistrib::enqueueSelfA3(), WorkDistrib::enqueueSelfB1(), WorkDistrib::enqueueSelfB2(), WorkDistrib::enqueueSelfB3(), WorkDistrib::enqueueThole(), WorkDistrib::enqueueWork(), WorkDistrib::enqueueWorkA1(), WorkDistrib::enqueueWorkA2(), WorkDistrib::enqueueWorkA3(), WorkDistrib::enqueueWorkB1(), WorkDistrib::enqueueWorkB2(), WorkDistrib::enqueueWorkB3(), WorkDistrib::enqueueWorkC(), WorkDistrib::finishCUDA(), WorkDistrib::finishCUDAP2(), WorkDistrib::finishCUDAP3(), WorkDistrib::finishMIC(), WorkDistrib::messageEnqueueWork(), WorkDistrib::messageFinishCUDA(), and WorkDistrib::messageFinishMIC().
|
protected |
Definition at line 51 of file Compute.C.
References DebugM, WorkDistrib::messageEnqueueWork(), and noWork().
Referenced by gbisP2PatchReady(), gbisP3PatchReady(), and patchReady().
|
virtual |
Definition at line 124 of file Compute.C.
References DebugM.
Referenced by WorkDistrib::finishCUDAPatch().
|
virtual |
Reimplemented in CudaComputeNonbonded.
Definition at line 96 of file Compute.C.
References enqueueWork().
Referenced by CudaComputeNonbonded::gbisP2PatchReady().
|
virtual |
Reimplemented in CudaComputeNonbonded.
Definition at line 106 of file Compute.C.
References enqueueWork().
Referenced by CudaComputeNonbonded::gbisP3PatchReady().
|
inline |
Definition at line 66 of file Compute.h.
References gbisPhase.
Referenced by WorkDistrib::messageEnqueueWork(), WorkDistrib::messageFinishCUDA(), and WorkDistrib::messageFinishMIC().
|
inline |
Definition at line 53 of file Compute.h.
Referenced by CudaComputeNonbonded::assignPatches(), ComputeLCPO::ComputeLCPO(), ComputePmeCUDA::ComputePmeCUDA(), ComputeLCPO::doWork(), ComputePmeCUDA::initialize(), ComputePmeCUDA::noWork(), CudaComputeNonbonded::openBoxesOnPe(), CudaComputeNonbonded::skipPatchesOnPe(), ComputePmeCUDA::storePmeForceMsg(), ComputeLCPO::~ComputeLCPO(), and ComputePmeCUDA::~ComputePmeCUDA().
|
inlinevirtual |
Reimplemented in ComputeHomeTuples< T, S, P >, ComputeHomeTuples< AnisoElem, Aniso, AnisoValue >, ComputeHomeTuples< AngleElem, Angle, AngleValue >, ComputeHomeTuples< GromacsPairElem, GromacsPair, GromacsPairValue >, ComputeHomeTuples< ExclElem, Exclusion, int >, ComputeHomeTuples< DihedralElem, Dihedral, DihedralValue >, ComputeHomeTuples< ImproperElem, Improper, ImproperValue >, ComputeHomeTuples< BondElem, Bond, BondValue >, ComputeHomeTuples< CrosstermElem, Crossterm, CrosstermValue >, ComputeHomeTuples< TholeElem, Thole, TholeValue >, ComputeSelfTuples< T, S, P >, ComputeSelfTuples< AnisoElem, Aniso, AnisoValue >, ComputeSelfTuples< AngleElem, Angle, AngleValue >, ComputeSelfTuples< GromacsPairElem, GromacsPair, GromacsPairValue >, ComputeSelfTuples< ExclElem, Exclusion, int >, ComputeSelfTuples< DihedralElem, Dihedral, DihedralValue >, ComputeSelfTuples< ImproperElem, Improper, ImproperValue >, ComputeSelfTuples< BondElem, Bond, BondValue >, ComputeSelfTuples< CrosstermElem, Crossterm, CrosstermValue >, ComputeSelfTuples< TholeElem, Thole, TholeValue >, CudaComputeNonbonded, ComputeQM, ComputeLCPO, ComputeHomePatches, ComputePme, ComputeHomePatch, ComputePatchPair, ComputeNonbondedSelf, ComputePatch, ComputeNonbondedPair, and ComputePmeCUDA.
Definition at line 56 of file Compute.h.
Referenced by ComputePatch::initialize(), ComputePatchPair::initialize(), ComputeHomePatch::initialize(), and ComputeLCPO::initialize().
|
virtual |
Reimplemented in CudaComputeNonbonded, ComputeLCPO, ComputePme, ComputeNonbondedSelf, ComputeNonbondedPair, and ComputePmeCUDA.
Definition at line 116 of file Compute.C.
Referenced by enqueueWork().
|
virtual |
Reimplemented in CudaComputeNonbonded.
Definition at line 67 of file Compute.C.
References atomUpdate(), DebugM, enqueueWork(), Node::Object(), Node::simParameters, and simParams.
Referenced by CudaComputeNonbonded::patchReady().
|
inline |
Definition at line 65 of file Compute.h.
References basePriority, gbisPhase, and gbisPhasePriority.
Referenced by CudaComputeNonbonded::initialize(), WorkDistrib::messageEnqueueWork(), WorkDistrib::messageFinishCUDA(), WorkDistrib::messageFinishMIC(), and cptr_sortop_priority::operator()().
|
inline |
Definition at line 64 of file Compute.h.
Referenced by ComputeNonbondedPair::doForce(), ComputeNonbondedSelf::doForce(), ComputeMsm::doWork(), ComputeGBISser::doWork(), ComputePme::doWork(), WorkDistrib::messageEnqueueWork(), WorkDistrib::messageFinishCUDA(), WorkDistrib::messageFinishMIC(), ComputeMgr::sendFinishPatchesOnPe(), ComputeMgr::sendFinishPatchOnPe(), ComputeMgr::sendOpenBoxesOnPe(), and ComputePme::ungridForces().
|
inline |
Definition at line 52 of file Compute.h.
Referenced by CudaComputeNonbonded::assignPatches(), ComputeHomePatch::ComputeHomePatch(), ComputeLCPO::ComputeLCPO(), ComputePatch::ComputePatch(), ComputePatchPair::ComputePatchPair(), ComputePme::ComputePme(), ComputePmeCUDA::ComputePmeCUDA(), and ComputeHomePatches::initialize().
|
inline |
Definition at line 48 of file Compute.h.
References computeType.
Referenced by WorkDistrib::messageEnqueueWork().
|
protected |
Definition at line 37 of file Compute.h.
Referenced by ComputePme::ComputePme(), ComputePme::doWork(), ComputePatch::initialize(), ComputePatchPair::initialize(), ComputeHomePatch::initialize(), ComputeLCPO::initialize(), and priority().
const ComputeID Compute::cid |
Definition at line 43 of file Compute.h.
Referenced by ComputeNonbondedPair::doForce(), ComputeNonbondedSelf::doForce(), ComputePme::doWork(), ComputePatch::initialize(), ComputePatchPair::initialize(), ComputeHomePatch::initialize(), WorkDistrib::messageEnqueueWork(), Patch::registerAvgPositionPickup(), Patch::registerBornRadPickup(), CudaComputeNonbonded::registerComputePair(), CudaComputeNonbonded::registerComputeSelf(), Patch::registerDEdaSumDeposit(), Patch::registerDHdrPrefixPickup(), Patch::registerForceDeposit(), Patch::registerIntRadPickup(), Patch::registerLcpoTypePickup(), Patch::registerPositionPickup(), Patch::registerPsiSumDeposit(), Patch::registerVelocityPickup(), Patch::unregisterAvgPositionPickup(), Patch::unregisterPositionPickup(), Patch::unregisterVelocityPickup(), ComputeHomePatch::~ComputeHomePatch(), ComputeLCPO::~ComputeLCPO(), ComputePatch::~ComputePatch(), and ComputePatchPair::~ComputePatchPair().
|
protected |
Definition at line 36 of file Compute.h.
Referenced by Compute(), ComputePatch::doWork(), ComputePatchPair::doWork(), and type().
|
protected |
Definition at line 39 of file Compute.h.
Referenced by ComputePatch::ComputePatch(), ComputePatchPair::ComputePatchPair(), CudaComputeNonbonded::CudaComputeNonbonded(), ComputeNonbondedPair::doForce(), ComputeNonbondedSelf::doForce(), ComputePatch::doWork(), ComputePatchPair::doWork(), CudaComputeNonbonded::doWork(), getGBISPhase(), CudaComputeNonbonded::launchWork(), ComputeNonbondedPair::noWork(), ComputeNonbondedSelf::noWork(), and priority().
|
protected |
Definition at line 40 of file Compute.h.
Referenced by Compute(), ComputePatch::initialize(), ComputePatchPair::initialize(), and priority().
LDObjHandle Compute::ldObjHandle |
Definition at line 44 of file Compute.h.
Referenced by Compute(), ComputePatch::doWork(), ComputePatchPair::doWork(), ComputeLCPO::doWork(), LdbCoordinator::initialize(), ComputeNonbondedPair::noWork(), ComputeNonbondedSelf::noWork(), ComputeLCPO::noWork(), and ComputeMgr::updateLocalComputes().
LocalWorkMsg* const Compute::localWorkMsg |
Definition at line 46 of file Compute.h.
Referenced by WorkDistrib::enqueueAngles(), WorkDistrib::enqueueAniso(), WorkDistrib::enqueueBonds(), WorkDistrib::enqueueCrossterms(), WorkDistrib::enqueueDihedrals(), WorkDistrib::enqueueExcls(), WorkDistrib::enqueueGromacsPair(), WorkDistrib::enqueueImpropers(), WorkDistrib::enqueueLCPO(), WorkDistrib::enqueuePme(), WorkDistrib::enqueueSelfA1(), WorkDistrib::enqueueSelfA2(), WorkDistrib::enqueueSelfA3(), WorkDistrib::enqueueSelfB1(), WorkDistrib::enqueueSelfB2(), WorkDistrib::enqueueSelfB3(), WorkDistrib::enqueueThole(), WorkDistrib::enqueueWork(), WorkDistrib::enqueueWorkA1(), WorkDistrib::enqueueWorkA2(), WorkDistrib::enqueueWorkA3(), WorkDistrib::enqueueWorkB1(), WorkDistrib::enqueueWorkB2(), WorkDistrib::enqueueWorkB3(), WorkDistrib::enqueueWorkC(), WorkDistrib::messageEnqueueWork(), WorkDistrib::messageFinishCUDA(), WorkDistrib::messageFinishMIC(), ComputePmeCUDADevice::sendForcesToPatch(), and ~Compute().