Defines the GPU-agnostic PME GPU data structures (the host-side PME GPU data, and the GPU function parameters).
- Todo:
- Due to Gerrit workflow and time constraints, some renaming/refactoring which does not impair the performance will be performed once most of the initial PME CUDA implementation is merged into the master branch (likely, after release 2017). This should include: – bringing the function names up to guidelines – PmeGpuSettings -> PmeGpuTasks – refining GPU notation application (#2053) – renaming coefficients to charges (?)
- Author
- Aleksei Iupinov a.yup.nosp@m.inov.nosp@m.@gmai.nosp@m.l.co.nosp@m.m
|
struct | PmeGpuConstParams |
| A GPU data structure for storing the constant PME data. This only has to be initialized once. More...
|
|
struct | PmeGpuGridParams |
| A GPU data structure for storing the PME data related to the grid sizes and cut-off. This only has to be updated at every DD step. More...
|
|
struct | PmeGpuAtomParams |
| A GPU data structure for storing the PME data of the atoms, local to this process' domain partition. This only has to be updated every DD step. More...
|
|
struct | PmeGpuDynamicParams |
| A GPU data structure for storing the PME data which might change for each new PME computation. More...
|
|
struct | PmeGpuKernelParamsBase |
| A single structure encompassing almost all the PME data used in GPU kernels on device. This is inherited by the GPU framework-specific structure (PmeGpuCudaKernelParams in pme.cuh). This way, most code preparing the kernel parameters can be GPU-agnostic by casting the kernel parameter data pointer to PmeGpuKernelParamsBase. More...
|
|
struct | PmeGpuSettings |
| The PME GPU settings structure, included in the main PME GPU structure by value. More...
|
|
struct | PmeGpuStaging |
| The PME GPU intermediate buffers structure, included in the main PME GPU structure by value. Buffers are managed by the PME GPU module. More...
|
|
struct | PmeShared |
| The PME GPU structure for all the data copied directly from the CPU PME structure. The copying is done when the CPU PME structure is already (re-)initialized (pme_gpu_reinit is called at the end of gmx_pme_init). All the variables here are named almost the same way as in gmx_pme_t. The types are different: pointers are replaced by vectors. TODO: use the shared data with the PME CPU. Included in the main PME GPU structure by value. More...
|
|
struct | PmeGpu |
| The main PME GPU host structure, included in the PME CPU structure by pointer. More...
|
|