Astaroth  2.2
kernels.cu File Reference
#include "kernels.h"
#include <assert.h>
#include <cuComplex.h>
#include "errchk.h"
#include "math_utils.h"
#include "boundconds.cuh"
#include "integration.cuh"
#include "packing.cuh"
#include "reductions.cuh"
+ Include dependency graph for kernels.cu:

Macros

#define DEVICE_VTXBUF_IDX(i, j, k)   ((i) + (j)*DCONST(AC_mx) + (k)*DCONST(AC_mxy))
 
#define DEVICE_1D_COMPDOMAIN_IDX(i, j, k)   ((i) + (j)*DCONST(AC_nx) + (k)*DCONST(AC_nxy))
 
#define globalGridN   (d_mesh_info.int3_params[AC_global_grid_n])
 
#define d_multigpu_offset   (d_mesh_info.int3_params[AC_multigpu_offset])
 
#define acComplex(x, y)   make_cuFloatComplex(x, y)
 
#define LOAD_DEFAULT_UNIFORM(X)   acDeviceLoadScalarUniform(device, STREAM_DEFAULT, X, X##_DEFAULT_VALUE);
 
#define LOAD_DEFAULT_UNIFORM(X)   acDeviceLoadVectorUniform(device, STREAM_DEFAULT, X, X##_DEFAULT_VALUE);
 
#define LOAD_DEFAULT_UNIFORM(X)   acDeviceLoadIntUniform(device, STREAM_DEFAULT, X, X##_DEFAULT_VALUE);
 
#define LOAD_DEFAULT_UNIFORM(X)   acDeviceLoadInt3Uniform(device, STREAM_DEFAULT, X, X##_DEFAULT_VALUE);
 

Typedefs

typedef cuFloatComplex acComplex
 

Functions

AcResult acDeviceLoadScalarUniform (const Device device, const Stream stream, const AcRealParam param, const AcReal value)
 
AcResult acDeviceLoadVectorUniform (const Device device, const Stream stream, const AcReal3Param param, const AcReal3 value)
 
AcResult acDeviceLoadIntUniform (const Device device, const Stream stream, const AcIntParam param, const int value)
 
AcResult acDeviceLoadInt3Uniform (const Device device, const Stream stream, const AcInt3Param param, const int3 value)
 
AcResult acDeviceLoadMeshInfo (const Device device, const AcMeshInfo device_config)
 
AcResult acDeviceLoadDefaultUniforms (const Device device)
 

Variables

__device__ __constant__ AcMeshInfo d_mesh_info
 

Macro Definition Documentation

◆ acComplex

#define acComplex (   x,
 
)    make_cuFloatComplex(x, y)

◆ d_multigpu_offset

#define d_multigpu_offset   (d_mesh_info.int3_params[AC_multigpu_offset])

◆ DEVICE_1D_COMPDOMAIN_IDX

#define DEVICE_1D_COMPDOMAIN_IDX (   i,
  j,
 
)    ((i) + (j)*DCONST(AC_nx) + (k)*DCONST(AC_nxy))

◆ DEVICE_VTXBUF_IDX

#define DEVICE_VTXBUF_IDX (   i,
  j,
 
)    ((i) + (j)*DCONST(AC_mx) + (k)*DCONST(AC_mxy))

◆ globalGridN

#define globalGridN   (d_mesh_info.int3_params[AC_global_grid_n])

◆ LOAD_DEFAULT_UNIFORM [1/4]

#define LOAD_DEFAULT_UNIFORM (   X)    acDeviceLoadScalarUniform(device, STREAM_DEFAULT, X, X##_DEFAULT_VALUE);

◆ LOAD_DEFAULT_UNIFORM [2/4]

#define LOAD_DEFAULT_UNIFORM (   X)    acDeviceLoadVectorUniform(device, STREAM_DEFAULT, X, X##_DEFAULT_VALUE);

◆ LOAD_DEFAULT_UNIFORM [3/4]

#define LOAD_DEFAULT_UNIFORM (   X)    acDeviceLoadIntUniform(device, STREAM_DEFAULT, X, X##_DEFAULT_VALUE);

◆ LOAD_DEFAULT_UNIFORM [4/4]

#define LOAD_DEFAULT_UNIFORM (   X)    acDeviceLoadInt3Uniform(device, STREAM_DEFAULT, X, X##_DEFAULT_VALUE);

Typedef Documentation

◆ acComplex

typedef cuFloatComplex acComplex

Function Documentation

◆ acDeviceLoadDefaultUniforms()

AcResult acDeviceLoadDefaultUniforms ( const Device  device)

◆ acDeviceLoadInt3Uniform()

AcResult acDeviceLoadInt3Uniform ( const Device  device,
const Stream  stream,
const AcInt3Param  param,
const int3  value 
)

◆ acDeviceLoadIntUniform()

AcResult acDeviceLoadIntUniform ( const Device  device,
const Stream  stream,
const AcIntParam  param,
const int  value 
)

◆ acDeviceLoadMeshInfo()

AcResult acDeviceLoadMeshInfo ( const Device  device,
const AcMeshInfo  device_config 
)

◆ acDeviceLoadScalarUniform()

AcResult acDeviceLoadScalarUniform ( const Device  device,
const Stream  stream,
const AcRealParam  param,
const AcReal  value 
)

◆ acDeviceLoadVectorUniform()

AcResult acDeviceLoadVectorUniform ( const Device  device,
const Stream  stream,
const AcReal3Param  param,
const AcReal3  value 
)

Variable Documentation

◆ d_mesh_info

__device__ __constant__ AcMeshInfo d_mesh_info