Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

CUDAKernels.h File Reference

CUDA kernels and utility functions used by the CUDAAccel and throughout VMD. More...

#include "WKFThreads.h"

Go to the source code of this file.

Defines

#define VMDCUDA_ERR_NONE   0
#define VMDCUDA_ERR_GENERAL   -1
#define VMDCUDA_ERR_NODEVICES   -2
#define VMDCUDA_ERR_SOMEDEVICES   -3
#define VMDCUDA_ERR_DRVMISMATCH   -4
#define VMDCUDA_ERR_EMUDEVICE   -5
#define VMDCUDA_COMPUTEMODE_DEFAULT   0
#define VMDCUDA_COMPUTEMODE_EXCLUSIVE   1
#define VMDCUDA_COMPUTEMODE_PROHIBITED   2

Functions

int vmd_cuda_num_devices (int *numdev)
int vmd_cuda_device_props (int dev, char *name, int namelen, int *revmajor, int *revminor, unsigned long *memb, int *clockratekhz, int *smcount, int *integratedgpu, int *asyncenginecount, int *kerneltimeout, int *canmaphostmem, int *computemode, int *spdpfpperfratio, int *pageablememaccess, int *pageablememaccessuseshostpagetables)
int vmd_cuda_peer_matrix (int *numdev, int **p2pmat, int **p2psupp, int **p2patomics, int **p2parrays, int **perfmat, int *p2plinkcount, int *islands)
void * vmd_cuda_affinitize_threads (void *voidparms)
void * vmd_cuda_devpool_enable_P2P (void *voidparms)
void * vmd_cuda_devpool_setdeviceonly (void *voidparms)
void * vmd_cuda_devpool_setdevice (void *voidparms)
void * vmd_cuda_devpool_clear_device_mem (void *)
int vmd_cuda_madd_gflops (int numdevs, int *devlist, double *gflops, int testloops)
int vmd_cuda_bus_bw (int numdevs, int *devlist, double *hdmbsec, double *hdlatusec, double *phdmbsec, double *phdlatusec, double *dhmbsec, double *dhlatusec, double *pdhmbsec, double *pdhlatusec)
int vmd_cuda_globmem_bw (int numdevs, int *devlist, double *memsetgbsec, double *memcpygbsec)
int vmd_cuda_devpool_latency (wkf_threadpool_t *devpool, int tilesize, double *kernlaunchlatency, double *barlatency, double *cyclelatency, double *tilelatency, double *kernellatency)
int vmd_cuda_measure_latencies (wkf_threadpool_t *devpool)
int gpu_ooc_bench (wkf_threadpool_t *devpool, int nfiles, const char **trjfileset, const AtomSel *sel, int first, int last, int step)
int vmd_cuda_vol_cpotential (long int natoms, float *atoms, float *grideners, long int numplane, long int numcol, long int numpt, float gridspacing)
int vmd_cuda_evaluate_occupancy_map (int mx, int my, int mz, float *map, float max_energy, float cutoff, float hx, float hy, float hz, float x0, float y0, float z0, float bx_1, float by_1, float bz_1, int nbx, int nby, int nbz, const float *bin, const float *bin_zero, int num_binoffsets, const char *binoffsets, int num_extras, const float *extra, int num_vdwparms, const float *vdwparms, int num_probes, const float *probevdwparms, int num_conformers, const float *conformers)
int rdf_gpu (wkf_threadpool_t *devpool, int usepbc, int natoms1, float *xyz, int natoms2, float *xyz2, float *cell, float *hist, int maxbin, float rmin, float delr)


Detailed Description

CUDA kernels and utility functions used by the CUDAAccel and throughout VMD.

Definition in file CUDAKernels.h.


Define Documentation

#define VMDCUDA_COMPUTEMODE_DEFAULT   0
 

Definition at line 44 of file CUDAKernels.h.

#define VMDCUDA_COMPUTEMODE_EXCLUSIVE   1
 

Definition at line 45 of file CUDAKernels.h.

#define VMDCUDA_COMPUTEMODE_PROHIBITED   2
 

Definition at line 46 of file CUDAKernels.h.

#define VMDCUDA_ERR_DRVMISMATCH   -4
 

Definition at line 40 of file CUDAKernels.h.

Referenced by CUDAAccel::CUDAAccel, vmd_cuda_drv_runtime_compatible, and vmd_cuda_num_devices.

#define VMDCUDA_ERR_EMUDEVICE   -5
 

Definition at line 41 of file CUDAKernels.h.

Referenced by vmd_cuda_device_props, and vmd_cuda_num_devices.

#define VMDCUDA_ERR_GENERAL   -1
 

Definition at line 37 of file CUDAKernels.h.

Referenced by vmd_cuda_device_props, and vmd_cuda_peer_matrix.

#define VMDCUDA_ERR_NODEVICES   -2
 

Definition at line 38 of file CUDAKernels.h.

Referenced by CUDAAccel::CUDAAccel, vmd_cuda_drv_runtime_compatible, and vmd_cuda_num_devices.

#define VMDCUDA_ERR_NONE   0
 

Definition at line 36 of file CUDAKernels.h.

Referenced by cuda_occupancy_thread, CUDAAccel::CUDAAccel, CUDAAccel::print_cuda_devices, vmd_cuda_device_props, vmd_cuda_drv_runtime_compatible, vmd_cuda_num_devices, and vmd_cuda_peer_matrix.

#define VMDCUDA_ERR_SOMEDEVICES   -3
 

Definition at line 39 of file CUDAKernels.h.

Referenced by CUDAAccel::CUDAAccel, and vmd_cuda_num_devices.


Function Documentation

int gpu_ooc_bench (  wkf_threadpool_t *    devpool,
int    nfiles,
const char **    trjfileset,
const AtomSel *    sel,
int    first,
int    last,
int    step
) 
 

Definition at line 1213 of file CUDABench.cu.

Referenced by text_cmd_vmdbench.

int rdf_gpu (  wkf_threadpool_t *    devpool,
int    usepbc,
int    natoms1,
float *    xyz,
int    natoms2,
float *    xyz2,
float *    cell,
float *    hist,
int    maxbin,
float    rmin,
float    delr
) 
 

Definition at line 912 of file CUDAMeasureRDF.cu.

void* vmd_cuda_affinitize_threads (  void *    voidparms ) 
 

Definition at line 361 of file CUDAUtil.cu.

int vmd_cuda_bus_bw (  int    numdevs,
int *    devlist,
double *    hdmbsec,
double *    hdlatusec,
double *    phdmbsec,
double *    phdlatusec,
double *    dhmbsec,
double *    dhlatusec,
double *    pdhmbsec,
double *    pdhlatusec
) 
 

Definition at line 455 of file CUDABench.cu.

Referenced by text_cmd_vmdbench.

int vmd_cuda_device_props (  int    dev,
char *    name,
int    namelen,
int *    revmajor,
int *    revminor,
unsigned long *    memb,
int *    clockratekhz,
int *    smcount,
int *    integratedgpu,
int *    asyncenginecount,
int *    kerneltimeout,
int *    canmaphostmem,
int *    computemode,
int *    spdpfpperfratio,
int *    pageablememaccess,
int *    pageablememaccessuseshostpagetables
) 
 

Definition at line 76 of file CUDAUtil.cu.

References atoms, and gridspacing.

void* vmd_cuda_devpool_clear_device_mem (  void *    ) 
 

Definition at line 40 of file CUDAClearDevice.cu.

void* vmd_cuda_devpool_enable_P2P (  void *    voidparms ) 
 

Definition at line 412 of file CUDAUtil.cu.

int vmd_cuda_devpool_latency (  wkf_threadpool_t *    devpool,
int    tilesize,
double *    kernlaunchlatency,
double *    barlatency,
double *    cyclelatency,
double *    tilelatency,
double *    kernellatency
) 
 

Definition at line 761 of file CUDABench.cu.

Referenced by text_cmd_vmdbench.

void* vmd_cuda_devpool_setdevice (  void *    voidparms ) 
 

Definition at line 439 of file CUDAUtil.cu.

void* vmd_cuda_devpool_setdeviceonly (  void *    voidparms ) 
 

Definition at line 333 of file CUDAUtil.cu.

int vmd_cuda_evaluate_occupancy_map (  int    mx,
int    my,
int    mz,
float *    map,
float    max_energy,
float    cutoff,
float    hx,
float    hy,
float    hz,
float    x0,
float    y0,
float    z0,
float    bx_1,
float    by_1,
float    bz_1,
int    nbx,
int    nby,
int    nbz,
const float *    bin,
const float *    bin_zero,
int    num_binoffsets,
const char *    binoffsets,
int    num_extras,
const float *    extra,
int    num_vdwparms,
const float *    vdwparms,
int    num_probes,
const float *    probevdwparms,
int    num_conformers,
const float *    conformers
) 
 

Definition at line 1601 of file CUDAVolMapCreateILS.cu.

int vmd_cuda_globmem_bw (  int    numdevs,
int *    devlist,
double *    memsetgbsec,
double *    memcpygbsec
) 
 

Definition at line 640 of file CUDABench.cu.

Referenced by text_cmd_vmdbench.

int vmd_cuda_madd_gflops (  int    numdevs,
int *    devlist,
double *    gflops,
int    testloops
) 
 

Definition at line 219 of file CUDABench.cu.

Referenced by text_cmd_vmdbench.

int vmd_cuda_measure_latencies (  wkf_threadpool_t *    devpool ) 
 

Definition at line 909 of file CUDABench.cu.

Referenced by vmd_cuda_devpool_latency.

int vmd_cuda_num_devices (  int *    numdev ) 
 

Definition at line 139 of file CUDAUtil.cu.

References bin.

int vmd_cuda_peer_matrix (  int *    numdev,
int **    p2pmat,
int **    p2psupp,
int **    p2patomics,
int **    p2parrays,
int **    perfmat,
int *    p2plinkcount,
int *    islands
) 
 

Definition at line 197 of file CUDAUtil.cu.

int vmd_cuda_vol_cpotential (  long int    natoms,
float *    atoms,
float *    grideners,
long int    numplane,
long int    numcol,
long int    numpt,
float    gridspacing
) 
 

Definition at line 234 of file CUDAVolCPotential.cu.


Generated on Fri Jan 23 01:51:44 2026 for VMD (current) by doxygen1.2.14 written by Dimitri van Heesch, © 1997-2002