Gromacs
2020.4
|
#include "config.h"
#include "gromacs/mdtypes/locality.h"
#include "gromacs/utility/enumerationhelpers.h"
#include "gromacs/utility/real.h"
Declares the PairlistType enum and PairlistParams class.
Classes | |
struct | PairlistParams |
The setup for generating and pruning the nbnxn pair list. More... | |
Enumerations | |
enum | PairlistType : int { Simple4x2, Simple4x4, Simple4x8, HierarchicalNxN, Count } |
The available pair list types. | |
Variables | |
static constexpr int | c_nbnxnCpuIClusterSize = 4 |
The i-cluster size for CPU kernels, always 4 atoms. | |
static constexpr int | c_nbnxnGpuClusterSize = GMX_OPENCL_NB_CLUSTER_SIZE |
The i- and j-cluster size for GPU lists, 8 atoms for CUDA, set at compile time for OpenCL. | |
static constexpr int | c_gpuNumClusterPerCellZ = 2 |
The number of clusters along Z in a pair-search grid cell for GPU lists. | |
static constexpr int | c_gpuNumClusterPerCellY = 2 |
The number of clusters along Y in a pair-search grid cell for GPU lists. | |
static constexpr int | c_gpuNumClusterPerCellX = 2 |
The number of clusters along X in a pair-search grid cell for GPU lists. | |
static constexpr int | c_gpuNumClusterPerCell |
The number of clusters in a pair-search grid cell for GPU lists. More... | |
static constexpr int | c_nbnxnGpuClusterpairSplit = 2 |
The number of sub-parts used for data storage for a GPU cluster pair. More... | |
static constexpr int | c_nbnxnGpuExclSize |
The fixed size of the exclusion mask array for a half GPU cluster pair. More... | |
static constexpr gmx::EnumerationArray < PairlistType, int > | IClusterSizePerListType |
Gives the i-cluster size for each pairlist type. More... | |
static constexpr gmx::EnumerationArray < PairlistType, int > | JClusterSizePerListType |
Gives the j-cluster size for each pairlist type. More... | |
|
static |
The number of clusters in a pair-search grid cell for GPU lists.
|
static |
The number of sub-parts used for data storage for a GPU cluster pair.
In CUDA the number of threads in a warp is 32 and we have cluster pairs of 8*8=64 atoms, so it's convenient to store data for cluster pair halves.
|
static |
The fixed size of the exclusion mask array for a half GPU cluster pair.
|
static |
Gives the i-cluster size for each pairlist type.
|
static |
Gives the j-cluster size for each pairlist type.