|
NAMD
|
#include <CudaPmeSolverUtil.h>
Public Member Functions | |
| CudaPmeTranspose (PmeGrid pmeGrid, const int permutation, const int jblock, const int kblock, int deviceID, cudaStream_t stream) | |
| ~CudaPmeTranspose () | |
| void | setDataPtrsYZX (std::vector< float2 *> &dataPtrsNew, float2 *data) |
| void | setDataPtrsZXY (std::vector< float2 *> &dataPtrsNew, float2 *data) |
| void | transposeXYZtoYZX (const float2 *data) |
| void | transposeXYZtoZXY (const float2 *data) |
| void | waitStreamSynchronize () |
| void | copyDataDeviceToHost (const int iblock, float2 *h_data, const int h_dataSize) |
| void | copyDataHostToDevice (const int iblock, float2 *data_in, float2 *data_out) |
| void | copyDataDeviceToDevice (const int iblock, float2 *data_out) |
| float2 * | getBuffer (const int iblock) |
| void | copyDataToPeerDeviceYZX (const int iblock, int deviceID_out, int permutation_out, float2 *data_out) |
| void | copyDataToPeerDeviceZXY (const int iblock, int deviceID_out, int permutation_out, float2 *data_out) |
Public Member Functions inherited from PmeTranspose | |
| PmeTranspose (PmeGrid pmeGrid, const int permutation, const int jblock, const int kblock) | |
| virtual | ~PmeTranspose () |
Additional Inherited Members | |
Protected Attributes inherited from PmeTranspose | |
| PmeGrid | pmeGrid |
| const int | permutation |
| const int | jblock |
| const int | kblock |
| int | isize |
| int | jsize |
| int | ksize |
| int | dataSize |
| int | nblock |
| std::vector< int > | pos |
Definition at line 158 of file CudaPmeSolverUtil.h.
| CudaPmeTranspose::CudaPmeTranspose | ( | PmeGrid | pmeGrid, |
| const int | permutation, | ||
| const int | jblock, | ||
| const int | kblock, | ||
| int | deviceID, | ||
| cudaStream_t | stream | ||
| ) |
Definition at line 842 of file CudaPmeSolverUtil.C.
References cudaCheck, PmeTranspose::dataSize, and PmeTranspose::nblock.
| CudaPmeTranspose::~CudaPmeTranspose | ( | ) |
| void CudaPmeTranspose::copyDataDeviceToDevice | ( | const int | iblock, |
| float2 * | data_out | ||
| ) |
Definition at line 1204 of file CudaPmeSolverUtil.C.
References cudaCheck, getBlockDim(), PmeTranspose::isize, PmeTranspose::jblock, PmeTranspose::jsize, PmeTranspose::kblock, NAMD_bug(), PmeTranspose::nblock, PmeTranspose::permutation, and PmeTranspose::pmeGrid.
| void CudaPmeTranspose::copyDataDeviceToHost | ( | const int | iblock, |
| float2 * | h_data, | ||
| const int | h_dataSize | ||
| ) |
Definition at line 1158 of file CudaPmeSolverUtil.C.
References cudaCheck, PmeTranspose::dataSize, PmeTranspose::jsize, PmeTranspose::ksize, NAMD_bug(), PmeTranspose::nblock, and PmeTranspose::pos.
| void CudaPmeTranspose::copyDataHostToDevice | ( | const int | iblock, |
| float2 * | data_in, | ||
| float2 * | data_out | ||
| ) |
Definition at line 1179 of file CudaPmeSolverUtil.C.
References cudaCheck, getBlockDim(), PmeTranspose::isize, PmeTranspose::jblock, PmeTranspose::jsize, PmeTranspose::kblock, NAMD_bug(), PmeTranspose::nblock, PmeTranspose::permutation, and PmeTranspose::pmeGrid.
| void CudaPmeTranspose::copyDataToPeerDeviceYZX | ( | const int | iblock, |
| int | deviceID_out, | ||
| int | permutation_out, | ||
| float2 * | data_out | ||
| ) |
Definition at line 1245 of file CudaPmeSolverUtil.C.
References PmeTranspose::jblock, and PmeTranspose::kblock.
| void CudaPmeTranspose::copyDataToPeerDeviceZXY | ( | const int | iblock, |
| int | deviceID_out, | ||
| int | permutation_out, | ||
| float2 * | data_out | ||
| ) |
Definition at line 1255 of file CudaPmeSolverUtil.C.
References PmeTranspose::jblock, and PmeTranspose::kblock.
| float2 * CudaPmeTranspose::getBuffer | ( | const int | iblock | ) |
Definition at line 1230 of file CudaPmeSolverUtil.C.
References getBlockDim(), PmeTranspose::jblock, PmeTranspose::kblock, NAMD_bug(), PmeTranspose::nblock, PmeTranspose::permutation, and PmeTranspose::pmeGrid.
| void CudaPmeTranspose::setDataPtrsYZX | ( | std::vector< float2 *> & | dataPtrsNew, |
| float2 * | data | ||
| ) |
Definition at line 873 of file CudaPmeSolverUtil.C.
References cudaCheck, TransposeBatch< T >::data_in, TransposeBatch< T >::data_out, PmeTranspose::jsize, PmeGrid::K1, PmeGrid::K2, PmeGrid::K3, PmeTranspose::ksize, NAMD_bug(), PmeTranspose::nblock, TransposeBatch< T >::nx, PmeTranspose::pmeGrid, PmeTranspose::pos, TransposeBatch< T >::ysize_out, and TransposeBatch< T >::zsize_out.
| void CudaPmeTranspose::setDataPtrsZXY | ( | std::vector< float2 *> & | dataPtrsNew, |
| float2 * | data | ||
| ) |
Definition at line 944 of file CudaPmeSolverUtil.C.
References cudaCheck, TransposeBatch< T >::data_in, TransposeBatch< T >::data_out, PmeTranspose::jsize, PmeGrid::K1, PmeGrid::K2, PmeGrid::K3, PmeTranspose::ksize, NAMD_bug(), PmeTranspose::nblock, TransposeBatch< T >::nx, PmeTranspose::pmeGrid, PmeTranspose::pos, TransposeBatch< T >::xsize_out, and TransposeBatch< T >::zsize_out.
|
virtual |
Implements PmeTranspose.
Definition at line 1006 of file CudaPmeSolverUtil.C.
References batchTranspose_xyz_yzx(), cudaCheck, PmeTranspose::isize, PmeTranspose::jsize, PmeTranspose::ksize, NAMD_bug(), PmeTranspose::nblock, Perm_cX_Y_Z, Perm_Y_Z_cX, Perm_Z_cX_Y, and PmeTranspose::permutation.
|
virtual |
Implements PmeTranspose.
Definition at line 1080 of file CudaPmeSolverUtil.C.
References batchTranspose_xyz_zxy(), cudaCheck, PmeTranspose::isize, PmeTranspose::jsize, PmeTranspose::ksize, NAMD_bug(), PmeTranspose::nblock, Perm_cX_Y_Z, Perm_Y_Z_cX, Perm_Z_cX_Y, and PmeTranspose::permutation.
| void CudaPmeTranspose::waitStreamSynchronize | ( | ) |
1.8.14