Gromacs  2024.2
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Macros | Variables
nbnxm_sycl_kernel_utils.h File Reference
#include "gromacs/gpu_utils/sycl_kernel_utils.h"
#include "gromacs/nbnxm/pairlist.h"
#include "gromacs/nbnxm/pairlistparams.h"
+ Include dependency graph for nbnxm_sycl_kernel_utils.h:
+ This graph shows which files directly or indirectly include this file:


Helper functions and constants for SYCL NBNXM kernels.


 Default for the prune kernel's jPacked processing concurrency.
 Explicit uniform load across the warp. More...


static constexpr int Nbnxm::c_syclPruneKernelJPackedConcurrency = 4
 Prune kernel's jPacked processing concurrency. More...

Macro Definition Documentation

#define UNIFORM_LOAD_CLUSTER_PAIR_DATA (   x)    (x)

Explicit uniform load across the warp.

Uses the readfirstlane intrinsic to ensure that uniform loads use scalar registers and subsequent operations on the results generate scalar instructions.

Note that some ROCm versions' compilers can figure out that the nbnxm exclusion indices and imasks are uniform and generate the right instructions, but others (like 4.5 and 5.0.2) do not.