Gromacs  2023.3
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Classes | Typedefs | Functions
nbnxm_sycl_kernel_pruneonly.cpp File Reference
#include "gmxpre.h"
#include "nbnxm_sycl_kernel_pruneonly.h"
#include "gromacs/gpu_utils/devicebuffer.h"
#include "gromacs/gpu_utils/gmxsycl.h"
#include "gromacs/utility/template_mp.h"
#include "nbnxm_sycl_kernel_utils.h"
#include "nbnxm_sycl_types.h"
+ Include dependency graph for nbnxm_sycl_kernel_pruneonly.cpp:

Description

NBNXM SYCL kernels.

Classes

class  NbnxmKernelPruneOnly< haveFreshList >
 Class name for NBNXM prune-only kernel. More...
 

Typedefs

using mode = sycl::access_mode
 

Functions

template<bool haveFreshList>
auto Nbnxm::nbnxmKernelPruneOnly (sycl::handler &cgh, DeviceAccessor< Float4, mode::read > a_xq, DeviceAccessor< Float3, mode::read > a_shiftVec, DeviceAccessor< nbnxn_cj_packed_t, mode::read_write > a_plistCJPacked, DeviceAccessor< nbnxn_sci_t, mode::read > a_plistSci, DeviceAccessor< unsigned int, haveFreshList?mode::write:mode::read > a_plistIMask, const float rlistOuterSq, const float rlistInnerSq, const int numParts, const int part)
 Prune-only kernel for NBNXM. More...
 
template<bool haveFreshList, class... Args>
void Nbnxm::launchNbnxmKernelPruneOnly (const DeviceStream &deviceStream, const int numSciInPart, Args &&...args)
 Leap Frog SYCL prune-only kernel launch code.
 
template<class... Args>
void Nbnxm::chooseAndLaunchNbnxmKernelPruneOnly (bool haveFreshList, Args &&...args)
 Select templated kernel and launch it.
 
void Nbnxm::launchNbnxmKernelPruneOnly (NbnxmGpu *nb, const InteractionLocality iloc, const int numParts, const int part, const int numSciInPart)
 Launch SYCL NBNXM prune-only kernel. More...