OpenLB 1.7
|
Plain column for CUDA GPU targets. More...
#include <column.h>
Classes | |
struct | Data |
Public Types | |
using | value_t = T |
Public Types inherited from olb::AbstractColumn< T > | |
using | value_type = T |
Public Member Functions | |
Column (std::size_t count) | |
Column (Column< T > &&rhs) | |
Column (const Column< T > &rhs) | |
~Column () | |
const T & | operator[] (std::size_t i) const override |
T & | operator[] (std::size_t i) override |
std::size_t | size () const |
const T * | data () const |
T * | data () |
const T * | deviceData () const |
T * | deviceData () |
void | clear () |
Reset size to zero. | |
void | resize (std::size_t newCount) |
void | push_back (T value) |
void | deduplicate () |
Combined ascending sort and removal of duplicate entries. | |
void | setProcessingContext (ProcessingContext) |
void | setProcessingContext (ProcessingContext, device::Stream &) |
std::size_t | getNblock () const override |
Number of data blocks for the serializable interface. | |
std::size_t | getSerializableSize () const override |
Binary size for the serializer. | |
bool * | getBlock (std::size_t iBlock, std::size_t &sizeBlock, bool loadingMode) override |
Return a pointer to the memory of the current block and its size for the serializable interface. | |
Public Member Functions inherited from olb::Serializable | |
virtual | ~Serializable ()=default |
template<bool includeLogOutputDir = true> | |
bool | save (std::string fileName="", const bool enforceUint=false) |
Save Serializable into file fileName | |
template<bool includeLogOutputDir = true> | |
bool | load (std::string fileName="", const bool enforceUint=false) |
Load Serializable from file fileName | |
bool | save (std::uint8_t *buffer) |
Save Serializable into buffer of length getSerializableSize | |
bool | load (const std::uint8_t *buffer) |
Load Serializable from buffer of length getSerializableSize | |
virtual void | postLoad () |
Additional Inherited Members | |
Protected Member Functions inherited from olb::Serializable | |
template<typename DataType > | |
void | registerVar (const std::size_t iBlock, std::size_t &sizeBlock, std::size_t ¤tBlock, bool *&dataPtr, const DataType &data, const size_t arrayLength=1) const |
Register primitive data types (int , double , ...) or arrays of those. | |
template<typename DataType > | |
void | registerSerializableOfConstSize (const std::size_t iBlock, std::size_t &sizeBlock, std::size_t ¤tBlock, bool *&dataPtr, DataType &data, const bool loadingMode=false) |
Register Serializable object of constant size. | |
template<typename DataType > | |
void | registerSerializablesOfConstSize (const std::size_t iBlock, std::size_t &sizeBlock, std::size_t ¤tBlock, bool *&dataPtr, DataType *data, const size_t arrayLength, const bool loadingMode=false) |
Register an array of Serializable objects of constant size. | |
Plain column for CUDA GPU targets.
using olb::gpu::cuda::Column< T >::value_t = T |
olb::gpu::cuda::Column< T >::Column | ( | std::size_t | count | ) |
olb::gpu::cuda::Column< T >::Column | ( | Column< T > && | rhs | ) |
olb::gpu::cuda::Column< T >::Column | ( | const Column< T > & | rhs | ) |
olb::gpu::cuda::Column< T >::~Column | ( | ) |
void olb::gpu::cuda::Column< T >::clear | ( | ) |
T * olb::gpu::cuda::Column< T >::data | ( | ) |
const T * olb::gpu::cuda::Column< T >::data | ( | ) | const |
void olb::gpu::cuda::Column< T >::deduplicate | ( | ) |
T * olb::gpu::cuda::Column< T >::deviceData | ( | ) |
Definition at line 152 of file column.hh.
References olb::gpu::cuda::Column< T >::data().
const T * olb::gpu::cuda::Column< T >::deviceData | ( | ) | const |
Definition at line 146 of file column.hh.
References olb::gpu::cuda::Column< T >::data().
|
overridevirtual |
Return a pointer to the memory of the current block and its size for the serializable interface.
Implements olb::Serializable.
Definition at line 202 of file column.hh.
|
overridevirtual |
Number of data blocks for the serializable interface.
Implements olb::Serializable.
Definition at line 190 of file column.hh.
|
overridevirtual |
Binary size for the serializer.
Implements olb::Serializable.
Definition at line 196 of file column.hh.
|
overridevirtual |
Implements olb::AbstractColumn< T >.
Definition at line 116 of file column.hh.
|
overridevirtual |
Implements olb::AbstractColumn< T >.
Definition at line 122 of file column.hh.
void olb::gpu::cuda::Column< T >::push_back | ( | T | value | ) |
Definition at line 102 of file column.hh.
References olb::gpu::cuda::Column< T >::push_back().
void olb::gpu::cuda::Column< T >::resize | ( | std::size_t | newCount | ) |
void olb::gpu::cuda::Column< T >::setProcessingContext | ( | ProcessingContext | context | ) |
Definition at line 158 of file column.hh.
References olb::gpu::cuda::device::copyToDevice(), olb::gpu::cuda::device::copyToHost(), olb::Evaluation, and olb::Simulation.
void olb::gpu::cuda::Column< T >::setProcessingContext | ( | ProcessingContext | context, |
device::Stream & | stream ) |
Definition at line 174 of file column.hh.
References olb::gpu::cuda::device::asyncCopyToDevice(), olb::gpu::cuda::device::asyncCopyToHost(), olb::Evaluation, olb::gpu::cuda::device::Stream::get(), and olb::Simulation.
std::size_t olb::gpu::cuda::Column< T >::size | ( | ) | const |