Gromacs  2025-dev-20241002-88a4191
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
List of all members | Public Attributes
KernelLaunchConfig Struct Reference

#include <gromacs/gpu_utils/gputraits_sycl.h>

Description

GPU kernels scheduling description. This is same in OpenCL/HIP. Provides reasonable defaults, one typically only needs to set the GPU stream and non-1 work sizes.

GPU kernels scheduling description. One typically only needs to set non-1 work sizes.

GPU kernels scheduling description. This is same in OpenCL/CUDA. Provides reasonable defaults, one typically only needs to set the GPU stream and non-1 work sizes.

Note
This struct uses CUDA/OpenCL layout, with the first dimension being contiguous. It is different from the SYCL standard, where the last dimension is contiguous. The transpose is to be performed internally in ISyclKernelFunctor::launch.
sharedMemorySize is ignored in SYCL.

Public Attributes

size_t gridSize [3] = { 1, 1, 1 }
 Block counts. More...
 
size_t blockSize [3] = { 1, 1, 1 }
 Per-block thread counts. More...
 
size_t sharedMemorySize = 0
 Shared memory size in bytes.
 

Member Data Documentation

size_t KernelLaunchConfig::blockSize = { 1, 1, 1 }

Per-block thread counts.

Per work group (CUDA block) thread counts.

size_t KernelLaunchConfig::gridSize = { 1, 1, 1 }

Block counts.

Work groups (CUDA blocks) counts.


The documentation for this struct was generated from the following files: