version 1.1 | version 1.2 |
---|
| |
#include "PatchTypes.h" | #include "PatchTypes.h" |
#include "CudaUtils.h" | #include "CudaUtils.h" |
#include "ComputeNonbondedUtil.h" | #include "ComputeNonbondedUtil.h" |
| #include "CudaNonbondedTables.h" |
#include "CudaTileListKernel.h" | #include "CudaTileListKernel.h" |
#include "CudaComputeNonbondedKernel.h" | #include "CudaComputeNonbondedKernel.h" |
#include "CudaComputeGBISKernel.h" | #include "CudaComputeGBISKernel.h" |
| |
| |
// Node lock | // Node lock |
CmiNodeLock lock; | CmiNodeLock lock; |
// List of patch indices on each rank | |
std::vector< std::vector<int> > rankPatches; | |
// List of local PEs that have patches | // List of local PEs that have patches |
std::vector<int> pes; | std::vector<int> pes; |
| // List of patch indices on each rank |
| std::vector< std::vector<int> > rankPatches; |
// Master Pe = Pe where this Compute and reduction lives | // Master Pe = Pe where this Compute and reduction lives |
int masterPe; | int masterPe; |
| |
| |
void forceDoneSetCallback(); | void forceDoneSetCallback(); |
void updateComputes(); | void updateComputes(); |
void buildExclusions(); | void buildExclusions(); |
void buildVdwCoefTable(); | |
void buildForceAndEnergyTables(int tableSize); | |
void skipPatch(int i); | void skipPatch(int i); |
void openBox(int i); | void openBox(int i); |
void reallocateArrays(); | void reallocateArrays(); |
| |
// void writeXYZ(const char* filename); | // void writeXYZ(const char* filename); |
| |
public: | public: |
CudaComputeNonbonded(ComputeID c, int deviceID, bool doStreaming); | CudaComputeNonbonded(ComputeID c, int deviceID, CudaNonbondedTables& cudaNonbondedTables, bool doStreaming); |
~CudaComputeNonbonded(); | ~CudaComputeNonbonded(); |
void registerComputeSelf(ComputeID cid, PatchID pid); | void registerComputeSelf(ComputeID cid, PatchID pid); |
void registerComputePair(ComputeID cid, PatchID* pid, int* trans); | void registerComputePair(ComputeID cid, PatchID* pid, int* trans); |
| |
virtual void patchReady(PatchID, int doneMigration, int seq); | virtual void patchReady(PatchID, int doneMigration, int seq); |
virtual void gbisP2PatchReady(PatchID, int seq); | virtual void gbisP2PatchReady(PatchID, int seq); |
virtual void gbisP3PatchReady(PatchID, int seq); | virtual void gbisP3PatchReady(PatchID, int seq); |
void buildTables(); | |
}; | }; |
| |
#endif // NAMD_CUDA | #endif // NAMD_CUDA |