#include "gmxpre.h"
#include "pme_gpu_types_host.h"
#include "gromacs/fft/parallel_3dfft.h"
#include "pme_gpu_grid.h"
Implements stubs of high-level PME GPU functions for Sycl.
- Author
- Gaurav Garg gauga.nosp@m.rg@n.nosp@m.vidia.nosp@m..com
|
void | pmeGpuGridHaloExchange (const PmeGpu *) |
| Grid Halo exchange after PME spread ToDo: Current implementation transfers halo region from/to only immediate neighbours And, expects that overlapSize <= local grid width. Implement exchange with multiple neighbors to remove this limitation. More...
|
|
void | pmeGpuGridHaloExchangeReverse (const PmeGpu *) |
| Grid reverse Halo exchange before PME gather ToDo: Current implementation transfers halo region from/to only immediate neighbours And, expects that overlapSize <= local grid width. Implement exchange with multiple neighbors to remove this limitation. More...
|
|
template<bool forward> |
void | convertPmeGridToFftGrid (const PmeGpu *, float *, gmx_parallel_3dfft_t *, const int) |
| Copy PME Grid with overlap region to FFT grid and vice-versa. More...
|
|
template void | convertPmeGridToFftGrid< true > (const PmeGpu *, float *, gmx_parallel_3dfft_t *, const int) |
|
template void | convertPmeGridToFftGrid< false > (const PmeGpu *, float *, gmx_parallel_3dfft_t *, const int) |
|
Copy PME Grid with overlap region to FFT grid and vice-versa.
- Parameters
-
[in] | pmeGpu | The PME GPU structure. |
[in] | h_grid | FFT grid on host |
[in] | fftSetup | Host FFT setup structure |
[in] | gridIndex | Grid index which is to be converted |
- Template Parameters
-
pmeToFft | A boolean which tells if this is conversion from PME grid to FFT grid or reverse |
void pmeGpuGridHaloExchange |
( |
const PmeGpu * |
pmeGpu | ) |
|
Grid Halo exchange after PME spread ToDo: Current implementation transfers halo region from/to only immediate neighbours And, expects that overlapSize <= local grid width. Implement exchange with multiple neighbors to remove this limitation.
- Parameters
-
[in] | pmeGpu | The PME GPU structure. |
void pmeGpuGridHaloExchangeReverse |
( |
const PmeGpu * |
pmeGpu | ) |
|
Grid reverse Halo exchange before PME gather ToDo: Current implementation transfers halo region from/to only immediate neighbours And, expects that overlapSize <= local grid width. Implement exchange with multiple neighbors to remove this limitation.
- Parameters
-
[in] | pmeGpu | The PME GPU structure. |