|
Gromacs
2025.4
|
#include "config.h"
Include dependency graph for nbnxm_enums.h:
This graph shows which files directly or indirectly include this file:Nbnxm internal enumerations.
Enumerations | |
| enum | gmx::ElecType : int { gmx::ElecType::Cut, gmx::ElecType::RF, gmx::ElecType::EwaldTab, gmx::ElecType::EwaldTabTwin, gmx::ElecType::EwaldAna, gmx::ElecType::EwaldAnaTwin, gmx::ElecType::Count } |
| Nbnxm electrostatic GPU kernel flavors. More... | |
| enum | gmx::VdwType : int { gmx::VdwType::Cut, gmx::VdwType::CutCombGeom, gmx::VdwType::CutCombLB, gmx::VdwType::FSwitch, gmx::VdwType::PSwitch, gmx::VdwType::EwaldGeom, gmx::VdwType::EwaldLB, gmx::VdwType::Count } |
| Nbnxm VdW GPU kernel flavors. More... | |
| enum | gmx::NbnxmKernelType : int { NotSet = 0, Cpu4x4_PlainC, Cpu4xN_Simd_4xN, Cpu4xN_Simd_2xNN, Gpu8x8x8, Cpu8x8x8_PlainC, Cpu1x1_PlainC, Count } |
| Nonbonded NxN kernel types: plain C, CPU SIMD, GPU, GPU emulation. | |
| enum | gmx::EwaldExclusionType : int { NotSet = 0, Table, Analytical, DecidedByGpuModule } |
| Ewald exclusion types. | |
| enum | gmx::PairlistType : int { Simple4x2, Simple4x4, Simple4x8, Hierarchical8x8x8, Simple1x1, Count } |
| The available pair list types. | |
| enum | gmx::CoulombKernelType : int { ReactionField, Table, TableTwin, Ewald, EwaldTwin, Count } |
| Kinds of electrostatic treatments in SIMD Verlet kernels. | |
| enum | VdwCutoffCheck : int { No, Yes } |
| Whether have a separate cut-off check for VDW interactions. | |
| enum | LJEwald : int { None, CombGeometric } |
| Kind of Lennard-Jones Ewald treatments in NBNxM SIMD kernels. | |
| enum | EnergyOutput : int { None, System, GroupPairs } |
| What kind of energies are output, whole system or for energy groups. | |
Functions | |
| static constexpr bool | gmx::isGpuKernelType (const NbnxmKernelType kernelType) |
| const char * | gmx::nbnxmKernelTypeToName (NbnxmKernelType kernelType) |
| static constexpr bool | gmx::isGpuSpecificPairlist (const PairlistType pairlistType) |
| static constexpr int | gmx::sc_gpuClusterSize (const PairlistType pairlistType) |
| The NBNxM GPU i-cluster size in atoms for the given NBNxM GPU kernel layout. | |
| static constexpr int | gmx::sc_gpuNumClusterPerCellX (const PairlistType pairlistType) |
| The number of super clusters in the X dimension. | |
| static constexpr int | gmx::sc_gpuNumClusterPerCellY (const PairlistType pairlistType) |
| The number of super clusters in the X dimension. | |
| static constexpr int | gmx::sc_gpuNumClusterPerCellZ (const PairlistType pairlistType) |
| The number of super clusters in the X dimension. | |
| static constexpr int | gmx::sc_gpuClusterPerSuperCluster (const PairlistType pairlistType) |
| The NBNxM GPU super cluster size according to the kernel layout. | |
| static constexpr int | gmx::sc_gpuNumClusterPerCell (const PairlistType pairlistType) |
| The NBNxM GPU super cluster size according to the kernel layout. | |
| static constexpr int | gmx::sc_gpuClusterPairSplit (const PairlistType pairlistType) |
| The number of sub-parts used for data storage for a GPU cluster pair. More... | |
| static constexpr bool | gmx::sc_gpuPairlistHasSplitJCluster (const PairlistType pairlistType) |
| static constexpr int | gmx::sc_gpuSplitJClusterSize (const PairlistType pairlistType) |
| The size of the J clusters on the GPU, after taking pair splitting into account. | |
| constexpr int | gmx::sc_gpuJgroupSize (const PairlistType pairlistType) |
| With GPU kernels we group cluster pairs in 4 to optimize memory usage of integers containing 32 bits. | |
| static constexpr int | gmx::sc_gpuParallelExecutionWidth (const PairlistType pairlistType) |
| Parallel execution width corresponding to the current kernel layout. | |
| static constexpr int | gmx::sc_gpuExclSize (const PairlistType pairlistType) |
| The fixed size of the exclusion mask array for a half GPU cluster pair. | |
Variables | |
| constexpr int | gmx::c_numElecTypes = static_cast<int>(ElecType::Count) |
| Number of possible ElecType values. | |
| constexpr int | gmx::c_numVdwTypes = static_cast<int>(VdwType::Count) |
| Number of possible VdwType values. | |
| constexpr int | gmx::detail::c_nbnxnGpuClusterSize = 8 |
| The i- and j-cluster size for GPU lists, 8 atoms for CUDA, set at configure time for OpenCL and SYCL. | |
| static constexpr int | gmx::detail::c_nbnxnGpuClusterpairSplit = 2 |
| The number of sub-parts used for data storage for a GPU cluster pair. More... | |
| constexpr int | gmx::detail::c_gpuNumClusterPerCellZ = GMX_GPU_NB_NUM_CLUSTER_PER_CELL_Z |
| The number of clusters along a direction in a pair-search grid cell for GPU lists. More... | |
| constexpr int | gmx::detail::c_gpuNumClusterPerCellY = GMX_GPU_NB_NUM_CLUSTER_PER_CELL_Y |
| constexpr int | gmx::detail::c_gpuNumClusterPerCellX = GMX_GPU_NB_NUM_CLUSTER_PER_CELL_X |
1.8.5