21 #include "ComputeMgr.decl.h"    28 class ComputeGlobalConfigMsg;
    43 #if defined(NAMD_CUDA) || defined(NAMD_HIP)    46 class ComputeBondedCUDA;
   109     int tcl_error_code, std::vector<std::string> args);
   112 #ifdef NODEGROUP_FORCE_REGISTER   114   CthThread stowedThread;
   115   std::atomic<int> *suspendCounter;
   121       CthAwaken(stowedThread);
   127     CthAwaken(stowedThread);
   131   void stowSuspendULT()
   134     stowedThread=CthSelf();
   137     if(suspendCounter->fetch_sub(1)==1)
   149   void awakenStowedULTs()
   152     int size=CmiMyNodeSize();
   154     suspendCounter->store(size);
   155     thisProxy.wakeStowedULTs(wakeUp);
   169 #if defined(NAMD_CUDA) || defined(NAMD_HIP)   195   void sendLoadTuplesOnPe(std::vector<int>& pes, ComputeBondedCUDA* c);
   196   void recvLoadTuplesOnPe(ComputeBondedCUDAMsg *msg);
   212   ComputeDPME *computeDPMEObject;
   219   int updateComputesCount;
   220   int updateComputesReturnEP;
   221   CkGroupID updateComputesReturnChareID;
   225   std::vector<std::shared_ptr<dlloader::DLLoader<CudaGlobalMaster::CudaGlobalMasterClient>>> CudaGlobalMasterClientDlloaders;
   226   std::map<std::string, std::string> CudaGlobalMasterClientUpdateResultStrings;
   227   std::map<std::string, int> CudaGlobalMasterClientUpdateResults;
 void recvComputeEwaldData(ComputeEwaldMsg *)
 
void updateLocalComputes()
 
void sendYieldDevice(int pe)
 
A class for performing calculations on specific atoms selected by atom serial numbers. 
 
void recvComputeDPMEResults(ComputeDPMEResultsMsg *)
 
void updateLocalComputes5()
 
void recvFinishPatchOnPe(CudaComputeNonbondedMsg *msg)
 
void sendMessageEnqueueWork(int pe, CudaComputeNonbonded *c)
 
void sendFinishReductions(int pe, CudaComputeNonbonded *c)
 
std::string getCudaGlobalMasterUpdateResultString(const std::string &client_name) const
 
void recvComputeConsForceMsg(ComputeConsForceMsg *)
 
void updateLocalComputes3()
 
int getCudaGlobalMasterUpdateResult(const std::string &client_name) const
 
void recvMessageEnqueueWork(CudaComputeNonbondedMsg *msg)
 
void createComputes(ComputeMap *map)
 
void recvLaunchWork(CudaComputeNonbondedMsg *msg)
 
int computeGlobalResultsMsgSeq
 
void updateLocalComputes2(CkQdMsg *)
 
void recvAssignPatchesOnPe(CudaComputeNonbondedMsg *msg)
 
void doneUpdateLocalComputes()
 
void recvCudaGlobalMasterRemoveMsg(std::vector< std::string > args)
 
void recvComputeGlobalConfig(ComputeGlobalConfigMsg *)
 
int computeGlobalResultsMsgMasterSeq
 
void sendComputeEwaldData(ComputeEwaldMsg *)
 
void sendLaunchWork(int pe, CudaComputeNonbonded *c)
 
void recvYieldDevice(int pe)
 
void sendComputeGlobalResults(ComputeGlobalResultsMsg *)
 
void sendUnregisterBoxesOnPe(std::vector< int > &pes, CudaComputeNonbonded *c)
 
void sendFinishPatchesOnPe(std::vector< int > &pes, CudaComputeNonbonded *c)
 
void recvFinishReductions(CudaComputeNonbondedMsg *msg)
 
void updateLocalComputes4(CkQdMsg *)
 
void recvFinishPatchesOnPe(CudaComputeNonbondedMsg *msg)
 
void enableComputeGlobalResults()
 
void recvComputeGlobalResults(ComputeGlobalResultsMsg *)
 
ResizeArray< ComputeGlobalResultsMsg * > computeGlobalResultsMsgs
 
void recvComputeDPMEData(ComputeDPMEDataMsg *)
 
ComputeGlobal * computeGlobalObject
 
void recvComputeEwaldResults(ComputeEwaldMsg *)
 
void sendComputeDPMEData(ComputeDPMEDataMsg *)
 
void recvComputeGlobalData(ComputeGlobalDataMsg *)
 
void sendComputeDPMEResults(ComputeDPMEResultsMsg *, int)
 
void updateComputes2(CkQdMsg *)
 
void recvOpenBoxesOnPe(CudaComputeNonbondedMsg *msg)
 
void recvUnregisterBoxesOnPe(CudaComputeNonbondedMsg *msg)
 
void sendComputeGlobalConfig(ComputeGlobalConfigMsg *)
 
void recvCudaGlobalMasterCreateMsg(std::vector< std::string > args)
 
void recvSkipPatchesOnPe(CudaComputeNonbondedMsg *msg)
 
void recvCudaGlobalMasterUpdateResultMsg(int tcl_error_code, std::vector< std::string > args)
 
void sendComputeGlobalData(ComputeGlobalDataMsg *)
 
void sendOpenBoxesOnPe(std::vector< int > &pes, CudaComputeNonbonded *c)
 
void sendFinishPatchOnPe(int pe, CudaComputeNonbonded *c, int i, PatchID patchID)
 
void recvCudaGlobalMasterUpdateMsg(std::vector< std::string > args)
 
void updateComputes(int, CkGroupID)
 
void sendComputeEwaldResults(ComputeEwaldMsg *)
 
void sendAssignPatchesOnPe(std::vector< int > &pes, CudaComputeNonbonded *c)
 
void splitComputes2(CkQdMsg *)
 
void sendSkipPatchesOnPe(std::vector< int > &pes, CudaComputeNonbonded *c)