|
NAMD
|
#include <sfftw.h>#include <srfftw.h>#include <vector>#include <algorithm>#include <deque>#include "InfoStream.h"#include "Node.h"#include "PatchMap.h"#include "PatchMap.inl"#include "AtomMap.h"#include "ComputePme.h"#include "ComputePmeMgr.decl.h"#include "PmeBase.inl"#include "PmeRealSpace.h"#include "PmeKSpace.h"#include "ComputeNonbondedUtil.h"#include "PatchMgr.h"#include "Molecule.h"#include "ReductionMgr.h"#include "ComputeMgr.h"#include "ComputeMgr.decl.h"#include "Debug.h"#include "SimParameters.h"#include "WorkDistrib.h"#include "varsizemsg.h"#include "Random.h"#include "ckhashtable.h"#include "Priorities.h"#include "CudaUtils.h"#include "ComputeMoa.h"#include "ComputeMoaMgr.decl.h"#include "DeviceCUDA.h"#include <cuda_runtime.h>#include <cuda.h>#include "ComputePmeCUDAKernel.h"#include "ComputePmeMgr.def.h"Go to the source code of this file.
Classes | |
| class | PmeAckMsg |
| class | PmeGridMsg |
| class | PmeTransMsg |
| class | PmeSharedTransMsg |
| class | PmeUntransMsg |
| class | PmeSharedUntransMsg |
| class | PmeEvirMsg |
| class | PmePencilMap |
| struct | PmePencilInitMsgData |
| class | PmePencilInitMsg |
| struct | LocalPmeInfo |
| struct | NodePmeInfo |
| struct | sortop_bit_reversed |
| struct | ijpair |
| struct | ijpair_sortop_bit_reversed |
| class | ComputePmeMgr |
| struct | ComputePmeMgr::cuda_submit_charges_args |
| class | NodePmeMgr |
| class | PmePencil< T > |
| class | PmeZPencil |
| class | PmeYPencil |
| class | PmeXPencil |
Macros | |
| #define | fftwf_malloc fftw_malloc |
| #define | fftwf_free fftw_free |
| #define | MIN_DEBUG_LEVEL 3 |
| #define | NUM_STREAMS 1 |
| #define | CUDA_STREAM_CREATE(X) cudaStreamCreate(X) |
| #define | CUDA_EVENT_ID_PME_CHARGES 80 |
| #define | CUDA_EVENT_ID_PME_FORCES 81 |
| #define | CUDA_EVENT_ID_PME_TICK 82 |
| #define | CUDA_EVENT_ID_PME_COPY 83 |
| #define | CUDA_EVENT_ID_PME_KERNEL 84 |
| #define | count_limit 1000000 |
| #define | CUDA_POLL(FN, ARG) CcdCallFnAfter(FN,ARG,0.1) |
| #define | EVENT_STRIDE 10 |
| #define | XCOPY(X) masterPmeMgr->X = X; |
| #define | XCOPY(X) X = masterPmeMgr->X; |
| #define | DEBUG_NODE_PAR_RECV 0 |
Functions | |
| void | cuda_errcheck (const char *msg) |
| static int | findRecipEvirPe () |
| void | generatePmePeList2 (int *gridPeMap, int numGridPes, int *transPeMap, int numTransPes) |
| int | compare_bit_reversed (int a, int b) |
| bool | less_than_bit_reversed (int a, int b) |
| ResizeArray< ComputePme * > & | getComputes (ComputePmeMgr *mgr) |
| int | isPmeProcessor (int p) |
| void | Pme_init () |
| static void | PmeSlabSendTrans (int first, int last, void *result, int paraNum, void *param) |
| static void | PmeSlabSendUntrans (int first, int last, void *result, int paraNum, void *param) |
| static void | PmeSlabSendUngrid (int first, int last, void *result, int paraNum, void *param) |
| void | CcdCallBacksReset (void *ignored, double curWallTime) |
| void | cuda_check_pme_forces (void *arg, double walltime) |
| void | cuda_check_pme_charges (void *arg, double walltime) |
| static void | PmeXZPencilFFT (int first, int last, void *result, int paraNum, void *param) |
| static void | PmeZPencilSendTrans (int first, int last, void *result, int paraNum, void *param) |
| static void | PmeYPencilForwardFFT (int first, int last, void *result, int paraNum, void *param) |
| static void | PmeYPencilSendTrans (int first, int last, void *result, int paraNum, void *param) |
| static void | PmeXPencilSendUntrans (int first, int last, void *result, int paraNum, void *param) |
| static void | PmeYPencilBackwardFFT (int first, int last, void *result, int paraNum, void *param) |
| static void | PmeYPencilSendUntrans (int first, int last, void *result, int paraNum, void *param) |
| static void | PmeZPencilSendUngrid (int first, int last, void *result, int paraNum, void *param) |
Variables | |
| __thread DeviceCUDA * | deviceCUDA |
| char * | pencilPMEProcessors |
| #define count_limit 1000000 |
Definition at line 2504 of file ComputePme.C.
Referenced by cuda_check_pme_charges(), and cuda_check_pme_forces().
| #define CUDA_EVENT_ID_PME_CHARGES 80 |
Referenced by ComputePmeMgr::ComputePmeMgr(), and cuda_check_pme_charges().
| #define CUDA_EVENT_ID_PME_COPY 83 |
| #define CUDA_EVENT_ID_PME_FORCES 81 |
Referenced by ComputePmeMgr::ComputePmeMgr(), and cuda_check_pme_forces().
| #define CUDA_EVENT_ID_PME_KERNEL 84 |
| #define CUDA_EVENT_ID_PME_TICK 82 |
Referenced by ComputePmeMgr::ComputePmeMgr(), and ComputePmeMgr::ungridCalc().
| #define CUDA_POLL | ( | FN, | |
| ARG | |||
| ) | CcdCallFnAfter(FN,ARG,0.1) |
Definition at line 2505 of file ComputePme.C.
Referenced by cuda_check_pme_charges(), cuda_check_pme_forces(), ComputePmeMgr::pollChargeGridReady(), and ComputePmeMgr::pollForcesReady().
Referenced by ComputePmeMgr::ComputePmeMgr().
| #define DEBUG_NODE_PAR_RECV 0 |
Definition at line 5068 of file ComputePme.C.
| #define EVENT_STRIDE 10 |
Definition at line 2506 of file ComputePme.C.
Referenced by cuda_check_pme_forces(), and ComputePmeMgr::ungridCalc().
| #define fftwf_free fftw_free |
Definition at line 14 of file ComputePme.C.
Referenced by PmePencil< CBase_PmeZPencil >::~PmePencil().
| #define fftwf_malloc fftw_malloc |
Copyright (c) 1995, 1996, 1997, 1998, 1999, 2000 by The Board of Trustees of the University of Illinois. All rights reserved.
Definition at line 13 of file ComputePme.C.
Referenced by PmeZPencil::fft_init(), PmeYPencil::fft_init(), and PmeXPencil::fft_init().
| #define MIN_DEBUG_LEVEL 3 |
Definition at line 47 of file ComputePme.C.
| #define NUM_STREAMS 1 |
Definition at line 542 of file ComputePme.C.
Referenced by ComputePmeMgr::ComputePmeMgr().
Referenced by ComputePmeMgr::initialize_computes().
| void CcdCallBacksReset | ( | void * | ignored, |
| double | curWallTime | ||
| ) |
| int compare_bit_reversed | ( | int | a, |
| int | b | ||
| ) |
Definition at line 346 of file ComputePme.C.
| void cuda_check_pme_charges | ( | void * | arg, |
| double | walltime | ||
| ) |
Definition at line 3540 of file ComputePme.C.
References CcdCallBacksReset(), ComputePmeMgr::charges_time, ComputePmeMgr::check_charges_count, count_limit, CUDA_EVENT_ID_PME_CHARGES, CUDA_POLL, cudaDie(), ComputePmeMgr::end_charges, ComputePmeMgr::saved_sequence, and ComputePmeMgr::sendChargeGridReady().
Referenced by ComputePmeMgr::pollChargeGridReady().
| void cuda_check_pme_forces | ( | void * | arg, |
| double | walltime | ||
| ) |
Definition at line 2512 of file ComputePme.C.
References CcdCallBacksReset(), ComputePmeMgr::check_forces_count, count_limit, CUDA_EVENT_ID_PME_FORCES, CUDA_POLL, cudaDie(), ComputePmeMgr::end_forces, EVENT_STRIDE, ComputePmeMgr::forces_count, ComputePmeMgr::forces_done_count, ComputePmeMgr::forces_time, WorkDistrib::messageEnqueueWork(), ComputePmeMgr::pmeComputes, and ComputePmeMgr::saved_sequence.
Referenced by ComputePmeMgr::pollForcesReady().
| void cuda_errcheck | ( | const char * | msg | ) |
Definition at line 67 of file ComputePme.C.
References NAMD_die().
Referenced by ComputePmeMgr::ComputePmeMgr(), ComputePme::doWork(), ComputePmeMgr::initialize(), ComputePmeMgr::initialize_computes(), and ComputePmeMgr::ungridCalc().
|
static |
Definition at line 269 of file ComputePme.C.
References NAMD_bug(), PatchMap::numPatchesOnNode(), and PatchMap::Object().
Referenced by PmeXPencil::evir_init(), and ComputePmeMgr::initialize().
| void generatePmePeList2 | ( | int * | gridPeMap, |
| int | numGridPes, | ||
| int * | transPeMap, | ||
| int | numTransPes | ||
| ) |
Definition at line 320 of file ComputePme.C.
References WorkDistrib::peDiffuseOrdering.
Referenced by ComputePmeMgr::initialize().
| ResizeArray<ComputePme*>& getComputes | ( | ComputePmeMgr * | mgr | ) |
Definition at line 615 of file ComputePme.C.
References ComputePmeMgr::pmeComputes.
Referenced by ComputeQM::saveResults().
| int isPmeProcessor | ( | int | p | ) |
Definition at line 626 of file ComputePme.C.
References Node::Object(), pencilPMEProcessors, Node::simParameters, and simParams.
|
inline |
Definition at line 355 of file ComputePme.C.
Referenced by sortop_bit_reversed::operator()(), and ijpair_sortop_bit_reversed::operator()().
| void Pme_init | ( | ) |
Definition at line 882 of file ComputePme.C.
|
inlinestatic |
Definition at line 1962 of file ComputePme.C.
References ComputePmeMgr::sendTransSubset().
Referenced by ComputePmeMgr::sendTrans().
|
inlinestatic |
Definition at line 2399 of file ComputePme.C.
References ComputePmeMgr::sendUngridSubset().
Referenced by ComputePmeMgr::sendUngrid().
|
inlinestatic |
Definition at line 2213 of file ComputePme.C.
References ComputePmeMgr::sendUntransSubset().
Referenced by ComputePmeMgr::sendUntrans().
|
inlinestatic |
Definition at line 5830 of file ComputePme.C.
References PmeXPencil::send_subset_untrans().
Referenced by PmeXPencil::send_untrans().
|
inlinestatic |
Definition at line 5266 of file ComputePme.C.
Referenced by PmeZPencil::backward_fft(), PmeXPencil::backward_fft(), PmeZPencil::forward_fft(), and PmeXPencil::forward_fft().
|
inlinestatic |
Definition at line 6005 of file ComputePme.C.
References PmeYPencil::backward_subset_fft().
Referenced by PmeYPencil::backward_fft().
|
inlinestatic |
Definition at line 5495 of file ComputePme.C.
References PmeYPencil::forward_subset_fft().
Referenced by PmeYPencil::forward_fft().
|
inlinestatic |
Definition at line 5547 of file ComputePme.C.
References PmeYPencil::send_subset_trans().
Referenced by PmeYPencil::send_trans().
|
inlinestatic |
Definition at line 6064 of file ComputePme.C.
References PmeYPencil::send_subset_untrans().
Referenced by PmeYPencil::send_untrans().
|
inlinestatic |
Definition at line 5331 of file ComputePme.C.
References PmeZPencil::send_subset_trans().
Referenced by PmeZPencil::send_trans().
|
inlinestatic |
Definition at line 6300 of file ComputePme.C.
References PmeZPencil::send_subset_ungrid().
Referenced by PmeZPencil::send_all_ungrid().
| __thread DeviceCUDA* deviceCUDA |
Definition at line 23 of file DeviceCUDA.C.
Referenced by ComputePme::doWork(), ComputePmeMgr::initialize(), ComputePmeMgr::initialize_computes(), ComputePmeMgr::initialize_pencils(), and ComputePmeMgr::ungridCalc().
| char* pencilPMEProcessors |
Definition at line 135 of file ComputePme.C.
Referenced by ComputePmeMgr::initialize(), and isPmeProcessor().
1.8.14