Gromacs
2024.4
|
#include "gmxpre.h"
#include <cassert>
#include <cmath>
#include <cstdarg>
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include "gromacs/gpu_utils/pmalloc.h"
#include "gromacs/hardware/device_information.h"
#include "gromacs/hardware/device_management.h"
#include "gromacs/math/vectypes.h"
#include "gromacs/mdlib/force_flags.h"
#include "gromacs/mdtypes/interaction_const.h"
#include "gromacs/mdtypes/md_enums.h"
#include "gromacs/nbnxm/atomdata.h"
#include "gromacs/nbnxm/gpu_data_mgmt.h"
#include "gromacs/nbnxm/gpu_jit_support.h"
#include "gromacs/nbnxm/nbnxm.h"
#include "gromacs/nbnxm/nbnxm_gpu.h"
#include "gromacs/nbnxm/nbnxm_gpu_data_mgmt.h"
#include "gromacs/nbnxm/pairlistsets.h"
#include "gromacs/timing/gpu_timing.h"
#include "gromacs/utility/cstringutil.h"
#include "gromacs/utility/fatalerror.h"
#include "gromacs/utility/gmxassert.h"
#include "gromacs/utility/real.h"
#include "gromacs/utility/smalloc.h"
#include "nbnxm_ocl_types.h"
Define OpenCL implementation of nbnxm_gpu_data_mgmt.h.
Functions | |
static cl_kernel | Nbnxm::nbnxn_gpu_create_kernel (NbnxmGpu *nb, const char *kernel_name) |
Initializes the OpenCL kernel pointers of the nbnxn_ocl_ptr_t input data structure. | |
static void | Nbnxm::nbnxn_gpu_init_kernels (NbnxmGpu *nb) |
Initializes the OpenCL kernel pointers of the nbnxn_ocl_ptr_t input data structure. | |
void | Nbnxm::gpu_init_platform_specific (NbnxmGpu *nb) |
Initializes the NBNXM GPU data structures. | |
static void | Nbnxm::free_kernel (cl_kernel *kernel_ptr) |
Releases an OpenCL kernel pointer. | |
static void | Nbnxm::free_kernels (cl_kernel *kernels, int count) |
Releases a list of OpenCL kernel pointers. | |
static void | Nbnxm::freeGpuProgram (cl_program program) |
Free the OpenCL program. More... | |
void | Nbnxm::gpu_free_platform_specific (NbnxmGpu *nb) |
Releases the NBNXM GPU data structures. More... | |
int | Nbnxm::gpu_min_ci_balanced (NbnxmGpu *nb) |
This function is documented in the header file. | |
Variables | |
static unsigned int | Nbnxm::gpu_min_ci_balanced_factor = 50 |
This parameter should be determined heuristically from the kernel execution times. More... | |