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

CUDAVolMapCreateILS.cu File Reference

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <cuda.h>
#include "WKFThreads.h"
#include "WKFUtils.h"
#include "CUDAKernels.h"
#include "utilities.h"

Go to the source code of this file.

Compounds

union  flint_t
struct  occthrparms_t

Defines

#define CUERR
#define USE_ENERGY_EXCL
#define TEST_MBLOCK_EXCL
#define TEST_SHIFT_EXCL
#define MAX_THREADBLOCKS   65536
#define BIN_DEPTH   8
#define BIN_SLOTSIZE   4
#define BIN_SIZE   (BIN_DEPTH * BIN_SLOTSIZE)
#define BIN_SHIFT   5
#define BIN_SLOTSHIFT   2
#define MAX_VDWPARMS   160
#define MAX_PROBES   8
#define MAX_EXTRAS   50
#define MAX_BINOFFSETS   1467
#define MAX_EXCLOFFSETS   27
#define MAX_CONFORMERS   586
#define DO_ONE_PLANE
#define THBLEN   4
#define NTHREADSPERBLOCK   (THBLEN*THBLEN*THBLEN)
#define BSHIFT   2
#define NTPBSHIFT   6
#define NCONFPERLOOP   5
#define NTPB_TIMES_NCPL   (NTHREADSPERBLOCK * NCONFPERLOOP)
#define PADMASK   (THBLEN-1)
#define MAX_ALLOWABLE_ENERGY   87.f
#define TIME_PER_MONOATOM_WORKUNIT   1.24553913519431e-10
#define TIME_PER_MULTIATOM_WORKUNIT   5.24559386973180e-09
#define MAX_TIME_PER_KERNEL   1.f
#define DEFAULT_EXCL_DIST   1.f

Typedefs

typedef flint_t flint
typedef occthrparms_t occthrparms

Functions

__global__ void cuda_find_energy_exclusions (int *excl, const flint *bin_zero, int nbx, int nby, int mzblocks, int mzblockoffset)
__global__ void cuda_occupancy_monoatom (float *map, const int *excl, const flint *bin_zero, int nbx, int nby, int mzblocks, int mzblockoffset)
__global__ void cuda_occupancy_multiatom (float *map, const int *excl, const flint *bin_zero, int nbx, int nby, int mzblocks, int mzblockoffset)
void * cuda_occupancy_thread (void *voidparms)
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)

Variables

__constant__ float const_max_energy
__constant__ float const_min_occupancy
__constant__ float const_cutoff
__constant__ float const_min_excldist
__constant__ float const_hx
__constant__ float const_hy
__constant__ float const_hz
__constant__ float const_x0
__constant__ float const_y0
__constant__ float const_z0
__constant__ float const_bx_1
__constant__ float const_by_1
__constant__ float const_bz_1
__constant__ float const_inv_numconf
__constant__ int const_num_binoffsets
__constant__ int const_num_extras
__constant__ int const_num_probes
__constant__ int const_num_conformers
__constant__ float const_vdwparms [2 *MAX_VDWPARMS]
__constant__ float const_probevdwparms [2 *MAX_PROBES]
__constant__ flint const_extra [BIN_SLOTSIZE *MAX_EXTRAS]
__constant__ int const_binoffsets [MAX_BINOFFSETS]
__constant__ int const_excloffsets [MAX_EXCLOFFSETS]
__constant__ float const_conformers [3 *MAX_PROBES *MAX_CONFORMERS]


Define Documentation

#define BIN_DEPTH   8
 

Definition at line 87 of file CUDAVolMapCreateILS.cu.

#define BIN_SHIFT   5
 

Definition at line 90 of file CUDAVolMapCreateILS.cu.

Referenced by cuda_find_energy_exclusions, cuda_occupancy_monoatom, and cuda_occupancy_multiatom.

#define BIN_SIZE   (BIN_DEPTH * BIN_SLOTSIZE)
 

Definition at line 89 of file CUDAVolMapCreateILS.cu.

Referenced by cuda_find_energy_exclusions, cuda_occupancy_monoatom, cuda_occupancy_multiatom, and cuda_occupancy_thread.

#define BIN_SLOTSHIFT   2
 

Definition at line 91 of file CUDAVolMapCreateILS.cu.

Referenced by cuda_find_energy_exclusions, cuda_occupancy_monoatom, and cuda_occupancy_multiatom.

#define BIN_SLOTSIZE   4
 

Definition at line 88 of file CUDAVolMapCreateILS.cu.

Referenced by cuda_find_energy_exclusions, cuda_occupancy_monoatom, cuda_occupancy_multiatom, and cuda_occupancy_thread.

#define BSHIFT   2
 

Definition at line 183 of file CUDAVolMapCreateILS.cu.

Referenced by cuda_find_energy_exclusions, cuda_occupancy_monoatom, cuda_occupancy_multiatom, and cuda_occupancy_thread.

#define CUERR
 

Value:

do { \
    cudaError_t err; \
    if ((err = cudaGetLastError()) != cudaSuccess) { \
      printf("CUDA error: %s, %s line %d\n", cudaGetErrorString(err), __FILE__, __LINE__); \
      printf("Thread aborting...\n"); \
      return NULL; \
    } \
  } while (0)

Definition at line 39 of file CUDAVolMapCreateILS.cu.

Referenced by cuda_occupancy_thread.

#define DEFAULT_EXCL_DIST   1.f
 

#define DO_ONE_PLANE
 

Definition at line 177 of file CUDAVolMapCreateILS.cu.

Referenced by cuda_find_energy_exclusions, cuda_occupancy_monoatom, and cuda_occupancy_multiatom.

#define MAX_ALLOWABLE_ENERGY   87.f
 

Definition at line 200 of file CUDAVolMapCreateILS.cu.

Referenced by cuda_occupancy_multiatom.

#define MAX_BINOFFSETS   1467
 

Definition at line 161 of file CUDAVolMapCreateILS.cu.

Referenced by cuda_occupancy_thread.

#define MAX_CONFORMERS   586
 

Definition at line 173 of file CUDAVolMapCreateILS.cu.

Referenced by cuda_occupancy_thread.

#define MAX_EXCLOFFSETS   27
 

Definition at line 165 of file CUDAVolMapCreateILS.cu.

#define MAX_EXTRAS   50
 

Definition at line 157 of file CUDAVolMapCreateILS.cu.

Referenced by cuda_occupancy_thread.

#define MAX_PROBES   8
 

Definition at line 154 of file CUDAVolMapCreateILS.cu.

Referenced by cuda_occupancy_multiatom, and cuda_occupancy_thread.

#define MAX_THREADBLOCKS   65536
 

Definition at line 85 of file CUDAVolMapCreateILS.cu.

Referenced by cuda_occupancy_thread.

#define MAX_TIME_PER_KERNEL   1.f
 

#define MAX_VDWPARMS   160
 

Definition at line 151 of file CUDAVolMapCreateILS.cu.

Referenced by cuda_occupancy_thread.

#define NCONFPERLOOP   5
 

Definition at line 191 of file CUDAVolMapCreateILS.cu.

Referenced by cuda_occupancy_multiatom.

#define NTHREADSPERBLOCK   (THBLEN*THBLEN*THBLEN)
 

Definition at line 181 of file CUDAVolMapCreateILS.cu.

Referenced by cuda_find_energy_exclusions, cuda_occupancy_monoatom, and cuda_occupancy_multiatom.

#define NTPB_TIMES_NCPL   (NTHREADSPERBLOCK * NCONFPERLOOP)
 

Definition at line 196 of file CUDAVolMapCreateILS.cu.

Referenced by cuda_occupancy_multiatom.

#define NTPBSHIFT   6
 

Definition at line 185 of file CUDAVolMapCreateILS.cu.

Referenced by cuda_find_energy_exclusions, cuda_occupancy_monoatom, and cuda_occupancy_multiatom.

#define PADMASK   (THBLEN-1)
 

Definition at line 198 of file CUDAVolMapCreateILS.cu.

Referenced by cuda_occupancy_multiatom, and cuda_occupancy_thread.

#define TEST_MBLOCK_EXCL
 

Definition at line 76 of file CUDAVolMapCreateILS.cu.

#define TEST_SHIFT_EXCL
 

Definition at line 77 of file CUDAVolMapCreateILS.cu.

#define THBLEN   4
 

Definition at line 180 of file CUDAVolMapCreateILS.cu.

Referenced by cuda_occupancy_thread.

#define TIME_PER_MONOATOM_WORKUNIT   1.24553913519431e-10
 

#define TIME_PER_MULTIATOM_WORKUNIT   5.24559386973180e-09
 

#define USE_ENERGY_EXCL
 

Definition at line 68 of file CUDAVolMapCreateILS.cu.


Typedef Documentation

typedef union flint_t flint
 

typedef struct occthrparms_t occthrparms
 


Function Documentation

__global__ void cuda_find_energy_exclusions int *    excl,
const flint   bin_zero,
int    nbx,
int    nby,
int    mzblocks,
int    mzblockoffset
[static]
 

Definition at line 324 of file CUDAVolMapCreateILS.cu.

References BIN_SHIFT, BIN_SIZE, BIN_SLOTSHIFT, BIN_SLOTSIZE, BSHIFT, const_binoffsets, const_bx_1, const_by_1, const_bz_1, const_cutoff, const_extra, const_hx, const_hy, const_hz, const_max_energy, const_num_binoffsets, const_num_extras, const_probevdwparms, const_vdwparms, const_x0, const_y0, const_z0, DO_ONE_PLANE, flint_t::f, flint_t::i, NTHREADSPERBLOCK, and NTPBSHIFT.

__global__ void cuda_occupancy_monoatom float *    map,
const int *    excl,
const flint   bin_zero,
int    nbx,
int    nby,
int    mzblocks,
int    mzblockoffset
[static]
 

Definition at line 502 of file CUDAVolMapCreateILS.cu.

References BIN_SHIFT, BIN_SIZE, BIN_SLOTSHIFT, BIN_SLOTSIZE, BSHIFT, const_binoffsets, const_bx_1, const_by_1, const_bz_1, const_cutoff, const_extra, const_hx, const_hy, const_hz, const_max_energy, const_num_binoffsets, const_num_extras, const_probevdwparms, const_vdwparms, const_x0, const_y0, const_z0, DO_ONE_PLANE, flint_t::f, flint_t::i, NTHREADSPERBLOCK, and NTPBSHIFT.

__global__ void cuda_occupancy_multiatom float *    map,
const int *    excl,
const flint   bin_zero,
int    nbx,
int    nby,
int    mzblocks,
int    mzblockoffset
[static]
 

Definition at line 677 of file CUDAVolMapCreateILS.cu.

References BIN_SHIFT, BIN_SIZE, BIN_SLOTSHIFT, BIN_SLOTSIZE, BSHIFT, const_binoffsets, const_bx_1, const_by_1, const_bz_1, const_conformers, const_cutoff, const_extra, const_hx, const_hy, const_hz, const_inv_numconf, const_min_occupancy, const_num_binoffsets, const_num_conformers, const_num_extras, const_num_probes, const_probevdwparms, const_vdwparms, const_x0, const_y0, const_z0, DO_ONE_PLANE, flint_t::f, flint_t::i, MAX_ALLOWABLE_ENERGY, MAX_PROBES, NCONFPERLOOP, NTHREADSPERBLOCK, NTPB_TIMES_NCPL, NTPBSHIFT, and PADMASK.

void* cuda_occupancy_thread void *    voidparms [static]
 

Definition at line 1050 of file CUDAVolMapCreateILS.cu.

References occthrparms_t::bin, BIN_SIZE, BIN_SLOTSIZE, occthrparms_t::bin_zero, occthrparms_t::binoffsets, BSHIFT, occthrparms_t::bx_1, occthrparms_t::by_1, occthrparms_t::bz_1, occthrparms_t::conformers, const_binoffsets, const_bx_1, const_by_1, const_bz_1, const_conformers, const_cutoff, const_excloffsets, const_extra, const_hx, const_hy, const_hz, const_inv_numconf, const_max_energy, const_min_excldist, const_min_occupancy, const_num_binoffsets, const_num_conformers, const_num_extras, const_num_probes, const_probevdwparms, const_vdwparms, const_x0, const_y0, const_z0, CUERR, occthrparms_t::cutoff, occthrparms_t::errcode, occthrparms_t::extra, occthrparms_t::hx, occthrparms_t::hy, occthrparms_t::hz, occthrparms_t::map, MAX_BINOFFSETS, MAX_CONFORMERS, occthrparms_t::max_energy, MAX_EXTRAS, MAX_PROBES, MAX_THREADBLOCKS, MAX_VDWPARMS, occthrparms_t::min_excldist, occthrparms_t::mx, occthrparms_t::my, occthrparms_t::mz, occthrparms_t::nbx, occthrparms_t::nby, occthrparms_t::nbz, NULL, occthrparms_t::num_binoffsets, occthrparms_t::num_conformers, occthrparms_t::num_extras, occthrparms_t::num_probes, occthrparms_t::num_vdwparms, PADMASK, occthrparms_t::probevdwparms, THBLEN, occthrparms_t::vdwparms, vmd_cuda_num_devices, VMDCUDA_ERR_NONE, wkf_timer_create, wkf_timer_destroy, wkf_timer_start, wkf_timer_timenow, wkf_timerhandle, occthrparms_t::x0, occthrparms_t::y0, and occthrparms_t::z0.

Referenced by vmd_cuda_evaluate_occupancy_map.

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 1615 of file CUDAVolMapCreateILS.cu.

References occthrparms_t::bin, occthrparms_t::bin_zero, occthrparms_t::binoffsets, occthrparms_t::bx_1, occthrparms_t::by_1, occthrparms_t::bz_1, occthrparms_t::conformers, cuda_occupancy_thread, occthrparms_t::cutoff, occthrparms_t::errcode, occthrparms_t::extra, occthrparms_t::hx, occthrparms_t::hy, occthrparms_t::hz, occthrparms_t::map, occthrparms_t::max_energy, occthrparms_t::min_excldist, occthrparms_t::mx, occthrparms_t::my, occthrparms_t::mz, occthrparms_t::nbx, occthrparms_t::nby, occthrparms_t::nbz, occthrparms_t::num_binoffsets, occthrparms_t::num_conformers, occthrparms_t::num_extras, occthrparms_t::num_probes, occthrparms_t::num_vdwparms, occthrparms_t::probevdwparms, occthrparms_t::vdwparms, occthrparms_t::x0, occthrparms_t::y0, and occthrparms_t::z0.


Variable Documentation

__constant__ int const_binoffsets[MAX_BINOFFSETS] [static]
 

Definition at line 162 of file CUDAVolMapCreateILS.cu.

Referenced by cuda_find_energy_exclusions, cuda_occupancy_monoatom, cuda_occupancy_multiatom, and cuda_occupancy_thread.

__constant__ float const_bx_1 [static]
 

Definition at line 142 of file CUDAVolMapCreateILS.cu.

Referenced by cuda_find_energy_exclusions, cuda_occupancy_monoatom, cuda_occupancy_multiatom, and cuda_occupancy_thread.

__constant__ float const_by_1 [static]
 

Definition at line 142 of file CUDAVolMapCreateILS.cu.

Referenced by cuda_find_energy_exclusions, cuda_occupancy_monoatom, cuda_occupancy_multiatom, and cuda_occupancy_thread.

__constant__ float const_bz_1 [static]
 

Definition at line 142 of file CUDAVolMapCreateILS.cu.

Referenced by cuda_find_energy_exclusions, cuda_occupancy_monoatom, cuda_occupancy_multiatom, and cuda_occupancy_thread.

__constant__ float const_conformers[3*MAX_PROBES*MAX_CONFORMERS] [static]
 

Definition at line 174 of file CUDAVolMapCreateILS.cu.

Referenced by cuda_occupancy_multiatom, and cuda_occupancy_thread.

__constant__ float const_cutoff [static]
 

Definition at line 138 of file CUDAVolMapCreateILS.cu.

Referenced by cuda_find_energy_exclusions, cuda_occupancy_monoatom, cuda_occupancy_multiatom, and cuda_occupancy_thread.

__constant__ int const_excloffsets[MAX_EXCLOFFSETS] [static]
 

Definition at line 166 of file CUDAVolMapCreateILS.cu.

Referenced by cuda_occupancy_thread.

__constant__ flint const_extra[BIN_SLOTSIZE * MAX_EXTRAS] [static]
 

Definition at line 158 of file CUDAVolMapCreateILS.cu.

Referenced by cuda_find_energy_exclusions, cuda_occupancy_monoatom, cuda_occupancy_multiatom, and cuda_occupancy_thread.

__constant__ float const_hx [static]
 

Definition at line 140 of file CUDAVolMapCreateILS.cu.

Referenced by cuda_find_energy_exclusions, cuda_occupancy_monoatom, cuda_occupancy_multiatom, and cuda_occupancy_thread.

__constant__ float const_hy [static]
 

Definition at line 140 of file CUDAVolMapCreateILS.cu.

Referenced by cuda_find_energy_exclusions, cuda_occupancy_monoatom, cuda_occupancy_multiatom, and cuda_occupancy_thread.

__constant__ float const_hz [static]
 

Definition at line 140 of file CUDAVolMapCreateILS.cu.

Referenced by cuda_find_energy_exclusions, cuda_occupancy_monoatom, cuda_occupancy_multiatom, and cuda_occupancy_thread.

__constant__ float const_inv_numconf [static]
 

Definition at line 144 of file CUDAVolMapCreateILS.cu.

Referenced by cuda_occupancy_multiatom, and cuda_occupancy_thread.

__constant__ float const_max_energy [static]
 

Definition at line 136 of file CUDAVolMapCreateILS.cu.

Referenced by cuda_find_energy_exclusions, cuda_occupancy_monoatom, and cuda_occupancy_thread.

__constant__ float const_min_excldist [static]
 

Definition at line 139 of file CUDAVolMapCreateILS.cu.

Referenced by cuda_occupancy_thread.

__constant__ float const_min_occupancy [static]
 

Definition at line 137 of file CUDAVolMapCreateILS.cu.

Referenced by cuda_occupancy_multiatom, and cuda_occupancy_thread.

__constant__ int const_num_binoffsets [static]
 

Definition at line 146 of file CUDAVolMapCreateILS.cu.

Referenced by cuda_find_energy_exclusions, cuda_occupancy_monoatom, cuda_occupancy_multiatom, and cuda_occupancy_thread.

__constant__ int const_num_conformers [static]
 

Definition at line 149 of file CUDAVolMapCreateILS.cu.

Referenced by cuda_occupancy_multiatom, and cuda_occupancy_thread.

__constant__ int const_num_extras [static]
 

Definition at line 147 of file CUDAVolMapCreateILS.cu.

Referenced by cuda_find_energy_exclusions, cuda_occupancy_monoatom, cuda_occupancy_multiatom, and cuda_occupancy_thread.

__constant__ int const_num_probes [static]
 

Definition at line 148 of file CUDAVolMapCreateILS.cu.

Referenced by cuda_occupancy_multiatom, and cuda_occupancy_thread.

__constant__ float const_probevdwparms[2 * MAX_PROBES] [static]
 

Definition at line 155 of file CUDAVolMapCreateILS.cu.

Referenced by cuda_find_energy_exclusions, cuda_occupancy_monoatom, cuda_occupancy_multiatom, and cuda_occupancy_thread.

__constant__ float const_vdwparms[2 * MAX_VDWPARMS] [static]
 

Definition at line 152 of file CUDAVolMapCreateILS.cu.

Referenced by cuda_find_energy_exclusions, cuda_occupancy_monoatom, cuda_occupancy_multiatom, and cuda_occupancy_thread.

__constant__ float const_x0 [static]
 

Definition at line 141 of file CUDAVolMapCreateILS.cu.

Referenced by cuda_find_energy_exclusions, cuda_occupancy_monoatom, cuda_occupancy_multiatom, and cuda_occupancy_thread.

__constant__ float const_y0 [static]
 

Definition at line 141 of file CUDAVolMapCreateILS.cu.

Referenced by cuda_find_energy_exclusions, cuda_occupancy_monoatom, cuda_occupancy_multiatom, and cuda_occupancy_thread.

__constant__ float const_z0 [static]
 

Definition at line 141 of file CUDAVolMapCreateILS.cu.

Referenced by cuda_find_energy_exclusions, cuda_occupancy_monoatom, cuda_occupancy_multiatom, and cuda_occupancy_thread.


Generated on Wed May 16 01:50:03 2012 for VMD (current) by doxygen1.2.14 written by Dimitri van Heesch, © 1997-2002