waLBerla 7.2
Loading...
Searching...
No Matches
walberla::gpu::internal Namespace Reference

Classes

class  AddToStorageExporter
 
class  copyFieldToGpuDispatchExporter
 
struct  GpuFieldExporter
 
class  PackInfoExporter
 
class  UniformMPIDatatypeInfoExporter
 

Functions

template<typename GPUField_T >
GPUField_T * createGPUField (const IBlock *const block, const StructuredBlockStorage *const bs, uint_t ghostLayers, uint_t fSize, const field::Layout &layout, bool usePitchedMem)
 
template<typename Field_T >
GPUField< typename Field_T::value_type > * createGPUFieldFromCPUField (const IBlock *const block, const StructuredBlockStorage *const, ConstBlockDataID cpuFieldID, bool usePitchedMem)
 
__global__ void packBufferGPU (gpu::FieldAccessor< real_t > fa, real_t *const buffer)
 
__global__ void unpackBufferGPU (gpu::FieldAccessor< real_t > fa, const real_t *const buffer)
 
template<typename GpuField_T >
uint64_t gpufield_ptr (const GpuField_T &gpuField)
 
template<typename GpuField_T >
std::string gpufield_dtypeStr (const GpuField_T &)
 
template<typename... GpuFields>
void addToStorage (const shared_ptr< StructuredBlockForest > &blocks, const std::string &name, py::object &dtype, uint_t fs, uint_t gl, Layout layout, bool usePitchedMem)
 
template<typename... GpuField_T>
static py::object PackInfoWrapper (const shared_ptr< StructuredBlockForest > &blocks, const std::string &name, uint_t numberOfGhostLayers)
 
template<typename... GpuField_T>
static py::object UniformMPIDatatypeInfoWrapper (const shared_ptr< StructuredBlockForest > &blocks, const std::string &name, uint_t numberOfGhostLayers)
 
template<typename... CpuFields>
void copyFieldToGPU (const shared_ptr< StructuredBlockForest > &blocks, const std::string &gpuFieldName, const std::string &cpuFieldName, bool toGPU)
 

Function Documentation

◆ addToStorage()

template<typename... GpuFields>
void walberla::gpu::internal::addToStorage ( const shared_ptr< StructuredBlockForest > & blocks,
const std::string & name,
py::object & dtype,
uint_t fs,
uint_t gl,
Layout layout,
bool usePitchedMem )

◆ copyFieldToGPU()

template<typename... CpuFields>
void walberla::gpu::internal::copyFieldToGPU ( const shared_ptr< StructuredBlockForest > & blocks,
const std::string & gpuFieldName,
const std::string & cpuFieldName,
bool toGPU )

◆ createGPUField()

template<typename GPUField_T >
GPUField_T * walberla::gpu::internal::createGPUField ( const IBlock *const block,
const StructuredBlockStorage *const bs,
uint_t ghostLayers,
uint_t fSize,
const field::Layout & layout,
bool usePitchedMem )

◆ createGPUFieldFromCPUField()

template<typename Field_T >
GPUField< typename Field_T::value_type > * walberla::gpu::internal::createGPUFieldFromCPUField ( const IBlock *const block,
const StructuredBlockStorage * const ,
ConstBlockDataID cpuFieldID,
bool usePitchedMem )

◆ gpufield_dtypeStr()

template<typename GpuField_T >
std::string walberla::gpu::internal::gpufield_dtypeStr ( const GpuField_T & )

◆ gpufield_ptr()

template<typename GpuField_T >
uint64_t walberla::gpu::internal::gpufield_ptr ( const GpuField_T & gpuField)

◆ packBufferGPU()

__global__ void walberla::gpu::internal::packBufferGPU ( gpu::FieldAccessor< real_t > fa,
real_t *const buffer )

◆ PackInfoWrapper()

template<typename... GpuField_T>
static py::object walberla::gpu::internal::PackInfoWrapper ( const shared_ptr< StructuredBlockForest > & blocks,
const std::string & name,
uint_t numberOfGhostLayers )
static

◆ UniformMPIDatatypeInfoWrapper()

template<typename... GpuField_T>
static py::object walberla::gpu::internal::UniformMPIDatatypeInfoWrapper ( const shared_ptr< StructuredBlockForest > & blocks,
const std::string & name,
uint_t numberOfGhostLayers )
static

◆ unpackBufferGPU()

__global__ void walberla::gpu::internal::unpackBufferGPU ( gpu::FieldAccessor< real_t > fa,
const real_t *const buffer )