Gromacs  2022.2
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
gpu_utils Directory Reference
+ Directory dependency graph for gpu_utils:

Directories

directory  tests
 

Files

file  clfftinitializer.cpp
 Implements ClfftInitializer class.
 
file  clfftinitializer.h
 Declares ClfftInitializer class, which initializes and tears down the clFFT library resources in OpenCL builds, and does nothing in other builds, and a factory function for it.
 
file  device_context.cpp
 Implements the DeviceContext for CPU build.
 
file  device_context.h
 Declarations for DeviceContext class.
 
file  device_context_ocl.cpp
 Implements the DeviceContext for OpenCL.
 
file  device_context_sycl.cpp
 Implements the DeviceContext for SYCL builds.
 
file  device_event.h
 Declares DeviceEvent for all build configuraitons.
 
file  device_event_ocl.h
 Implements a DeviceEvent class for OpenCL.
 
file  device_event_sycl.h
 Implements a GpuEventSynchronizer class for SYCL.
 
file  device_stream.cpp
 Implements the DeviceStream for CPU builds.
 
file  device_stream.h
 Declarations for DeviceStream class.
 
file  device_stream_manager.cpp
 Implements GPU stream manager.
 
file  device_stream_manager.h
 This file declares a manager of GPU context and streams needed for running workloads on GPUs.
 
file  device_stream_ocl.cpp
 Implements the DeviceStream for OpenCL.
 
file  device_stream_sycl.cpp
 Implements the DeviceStream for SYCL builds.
 
file  devicebuffer.h
 Implements the logic for handling of DeviceBuffer types in OpenCL, CUDA and SYCL.
 
file  devicebuffer_datatype.h
 Declares the DeviceBuffer data type.
 
file  devicebuffer_ocl.h
 Implements the DeviceBuffer type and routines for OpenCL. Should only be included directly by the main DeviceBuffer file devicebuffer.h. TODO: the intent is for DeviceBuffer to become a class.
 
file  devicebuffer_sycl.cpp
 Implements the DeviceBuffer type and routines for SYCL.
 
file  devicebuffer_sycl.h
 Implements the DeviceBuffer type and routines for SYCL. Should only be included directly by the main DeviceBuffer file devicebuffer.h. TODO: the intent is for DeviceBuffer to become a class.
 
file  gmxopencl.h
 Wraps the complexity of including OpenCL in Gromacs.
 
file  gmxsycl.h
 Wraps the complexity of including SYCL in GROMACS.
 
file  gpu_macros.h
 
file  gpu_utils.cpp
 Function definitions for non-GPU builds.
 
file  gpu_utils.h
 Declare functions for detection and initialization for GPU devices.
 
file  gpueventsynchronizer.h
 Implements a GpuEventSynchronizer class.
 
file  gpuregiontimer.h
 Defines the GPU region timer implementation/wrapper classes. The implementations live in gpuregiontimer.cuh for CUDA and gpuregiontimer_ocl.h for OpenCL.
 
file  gpuregiontimer_ocl.h
 Implements the GPU region timer for OpenCL.
 
file  gpuregiontimer_sycl.h
 Implements the GPU region timer for SYCL.
 
file  gputraits.h
 Declares the GPU type traits for non-GPU builds.
 
file  gputraits_ocl.h
 Declares the OpenCL type traits.
 
file  gputraits_sycl.h
 Declares the SYCL type traits.
 
file  hostallocator.cpp
 Implements gmx::HostAllocationPolicy for allocating memory suitable for e.g. GPU transfers on CUDA.
 
file  hostallocator.h
 Declares gmx::HostAllocationPolicy, gmx::HostAllocator, gmx::HostVector and gmx::PaddedHostVector, which are used to make/be standard library containers that can allocate memory suitable for transfers. Currently the only supported transfers using pinned memory are to CUDA GPUs, but other possibilities exist in future.
 
file  ocl_caching.cpp
 Define infrastructure for OpenCL JIT compilation for Gromacs.
 
file  ocl_caching.h
 Declare infrastructure for managing caching of OpenCL JIT-ted binaries.
 
file  ocl_compiler.cpp
 Define infrastructure for OpenCL JIT compilation for Gromacs.
 
file  ocl_compiler.h
 Declare infrastructure for OpenCL JIT compilation.
 
file  oclraii.h
 Declare RAII helpers for OpenCL types, along with supporting type traits.
 
file  oclutils.cpp
 Define utility routines for OpenCL.
 
file  oclutils.h
 Declare utility routines for OpenCL.
 
file  pinning.h
 Declares functions for pinning memory to be suitable for efficient GPU transfers on CUDA.
 
file  pmalloc.h
 Declare functions for host-side memory handling.
 
file  pmalloc_ocl.cpp
 Define functions for host-side memory handling when using OpenCL devices.
 
file  pmalloc_sycl.cpp
 Define utility routines for SYCL.
 
file  sycl_kernel_utils.h
 SYCL kernel helper functions.
 
file  syclutils.h
 Declare utility routines for SYCL.