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 Apr 19 02:45:45 2024 for VMD (current) by doxygen1.2.14 written by Dimitri van Heesch, © 1997-2002