Declares inline-friendly code for making 4xN pairlists.
- Author
- Berk Hess hess@.nosp@m.kth..nosp@m.se
|
static void | icell_set_x_simd_4xn (int ci, real shx, real shy, real shz, int gmx_unused stride, const real *x, NbnxnPairlistCpuWork *work) |
| Copies PBC shifted i-cell packed atom coordinates to working array.
|
|
static void | makeClusterListSimd4xn (const Grid &jGrid, NbnxnPairlistCpu *nbl, int icluster, int firstCell, int lastCell, bool excludeSubDiagonal, const real *gmx_restrict x_j, real rlist2, float rbb2, int *gmx_restrict numDistanceChecks) |
| SIMD code for checking and adding cluster-pairs to the list using coordinates in packed format. More...
|
|
SIMD code for checking and adding cluster-pairs to the list using coordinates in packed format.
Checks bounding box distances and possibly atom pair distances. This is an accelerated version of make_cluster_list_simple.
- Parameters
-
[in] | jGrid | The j-grid |
[in,out] | nbl | The pair-list to store the cluster pairs in |
[in] | icluster | The index of the i-cluster |
[in] | firstCell | The first cluster in the j-range, using i-cluster size indexing |
[in] | lastCell | The last cluster in the j-range, using i-cluster size indexing |
[in] | excludeSubDiagonal | Exclude atom pairs with i-index > j-index |
[in] | x_j | Coordinates for the j-atom, in SIMD packed format |
[in] | rlist2 | The squared list cut-off |
[in] | rbb2 | The squared cut-off for putting cluster-pairs in the list based on bounding box distance only |
[in,out] | numDistanceChecks | The number of distance checks performed |
constexpr int c_xStride4xN |
|
static |
Initial value:=
#define GMX_SIMD_REAL_WIDTH
Width of SimdReal.
Definition: simd.h:196
static constexpr int c_nbnxnCpuIClusterSize
The i-cluster size for CPU kernels, always 4 atoms.
Definition: pairlistparams.h:59
Stride of the packed x coordinate array.