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

CUDAVolMapCreateILS.cu File Reference

CUDA kernels for calculating implicit ligand sampling occupancy maps. More...

#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]

Detailed Description

CUDA kernels for calculating implicit ligand sampling occupancy maps.

Definition in file CUDAVolMapCreateILS.cu.


Define Documentation

#define BIN_DEPTH 8

Definition at line 86 of file CUDAVolMapCreateILS.cu.

#define BIN_SHIFT 5

#define BIN_SIZE (BIN_DEPTH * BIN_SLOTSIZE)

#define BIN_SLOTSHIFT 2

#define BIN_SLOTSIZE 4

#define BSHIFT 2

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

Referenced by cuda_occupancy_thread.

#define DEFAULT_EXCL_DIST 1.f

#define DO_ONE_PLANE

#define MAX_ALLOWABLE_ENERGY 87.f

Definition at line 199 of file CUDAVolMapCreateILS.cu.

Referenced by cuda_occupancy_multiatom.

#define MAX_BINOFFSETS 1467

Definition at line 160 of file CUDAVolMapCreateILS.cu.

Referenced by cuda_occupancy_thread.

#define MAX_CONFORMERS 586

Definition at line 172 of file CUDAVolMapCreateILS.cu.

Referenced by cuda_occupancy_thread.

#define MAX_EXCLOFFSETS 27

Definition at line 164 of file CUDAVolMapCreateILS.cu.

#define MAX_EXTRAS 50

Definition at line 156 of file CUDAVolMapCreateILS.cu.

Referenced by cuda_occupancy_thread.

#define MAX_PROBES 8

Definition at line 153 of file CUDAVolMapCreateILS.cu.

Referenced by cuda_occupancy_multiatom, and cuda_occupancy_thread.

#define MAX_THREADBLOCKS 65536

Definition at line 84 of file CUDAVolMapCreateILS.cu.

Referenced by cuda_occupancy_thread.

#define MAX_TIME_PER_KERNEL 1.f

#define MAX_VDWPARMS 160

Definition at line 150 of file CUDAVolMapCreateILS.cu.

Referenced by cuda_occupancy_thread.

#define NCONFPERLOOP 5

Definition at line 190 of file CUDAVolMapCreateILS.cu.

Referenced by cuda_occupancy_multiatom.

#define NTHREADSPERBLOCK (THBLEN*THBLEN*THBLEN)

#define NTPB_TIMES_NCPL (NTHREADSPERBLOCK * NCONFPERLOOP)

Definition at line 195 of file CUDAVolMapCreateILS.cu.

Referenced by cuda_occupancy_multiatom.

#define NTPBSHIFT 6

#define PADMASK (THBLEN-1)

Definition at line 197 of file CUDAVolMapCreateILS.cu.

Referenced by cuda_occupancy_multiatom, and cuda_occupancy_thread.

#define TEST_MBLOCK_EXCL

Definition at line 75 of file CUDAVolMapCreateILS.cu.

#define TEST_SHIFT_EXCL

Definition at line 76 of file CUDAVolMapCreateILS.cu.

#define THBLEN 4

Definition at line 179 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 67 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]

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

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

void* cuda_occupancy_thread ( void * voidparms ) [static]

Definition at line 1036 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, n, 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
)

Variable Documentation

__constant__ int const_binoffsets[MAX_BINOFFSETS] [static]

__constant__ float const_bx_1 [static]

__constant__ float const_by_1 [static]

__constant__ float const_bz_1 [static]

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

Definition at line 173 of file CUDAVolMapCreateILS.cu.

Referenced by cuda_occupancy_multiatom, and cuda_occupancy_thread.

__constant__ float const_cutoff [static]

__constant__ int const_excloffsets[MAX_EXCLOFFSETS] [static]

Definition at line 165 of file CUDAVolMapCreateILS.cu.

Referenced by cuda_occupancy_thread.

__constant__ flint const_extra[BIN_SLOTSIZE * MAX_EXTRAS] [static]

__constant__ float const_hx [static]

__constant__ float const_hy [static]

__constant__ float const_hz [static]

__constant__ float const_inv_numconf [static]

Definition at line 143 of file CUDAVolMapCreateILS.cu.

Referenced by cuda_occupancy_multiatom, and cuda_occupancy_thread.

__constant__ float const_max_energy [static]

__constant__ float const_min_excldist [static]

Definition at line 138 of file CUDAVolMapCreateILS.cu.

Referenced by cuda_occupancy_thread.

__constant__ float const_min_occupancy [static]

Definition at line 136 of file CUDAVolMapCreateILS.cu.

Referenced by cuda_occupancy_multiatom, and cuda_occupancy_thread.

__constant__ int const_num_binoffsets [static]

__constant__ int const_num_conformers [static]

Definition at line 148 of file CUDAVolMapCreateILS.cu.

Referenced by cuda_occupancy_multiatom, and cuda_occupancy_thread.

__constant__ int const_num_extras [static]

__constant__ int const_num_probes [static]

Definition at line 147 of file CUDAVolMapCreateILS.cu.

Referenced by cuda_occupancy_multiatom, and cuda_occupancy_thread.

__constant__ float const_probevdwparms[2 * MAX_PROBES] [static]

__constant__ float const_vdwparms[2 * MAX_VDWPARMS] [static]

__constant__ float const_x0 [static]

__constant__ float const_y0 [static]

__constant__ float const_z0 [static]

Generated on Mon Nov 17 02:47:37 2025 for VMD (current) by doxygen1.2.14 written by Dimitri van Heesch, © 1997-2002

AltStyle によって変換されたページ (->オリジナル) /