Gromacs  2020.1
 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  devicebuffer.h
 Implements the logic for handling of DeviceBuffer types in OpenCL/CUDA. Can only be included on GPU build paths.
 
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  gmxopencl.h
 Wraps the complexity of including OpenCL in Gromacs.
 
file  gpu_macros.h
 
file  gpu_testutils.cpp
 Function definitions for GPU detection, specific for tests.
 
file  gpu_testutils.h
 Declare functions for detection of GPU devices, specific for tests.
 
file  gpu_utils.cpp
 Function definitions for non-GPU builds.
 
file  gpu_utils.h
 Declare functions for detection and initialization for GPU devices.
 
file  gpu_utils_ocl.cpp
 Define functions for detection and initialization for OpenCL devices.
 
file  gpueventsynchronizer_ocl.h
 Implements a GpuEventSynchronizer class for OpenCL.
 
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  gputraits.h
 Declares the GPU type traits for non-GPU builds.
 
file  gputraits_ocl.h
 Declares the OpenCL 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_cuda.h
 Declare functions for host-side memory handling when using CUDA devices.