Definition at line 490 of file SparseGridGpu.hpp.
Public Types | |
typedef int | yes_i_am_grid |
it define that this data-structure is a grid | |
typedef linearizer | grid_info |
typedef linearizer | linearizer_type |
template<typename Tfunc > | |
using | layout_mfunc = memory_traits_inte< Tfunc > |
typedef sparse_grid_gpu_index< self > | base_key |
typedef indexT | indexT_ |
typedef decltype(std::declval< BMG >().toKernel().insertBlock(0)) | insert_encap |
typedef AggregateT | value_type |
typedef self | device_grid_type |
Public Types inherited from BlockMapGpu< AggregateBlockT, threadBlockSize, indexT, layout_base > | |
typedef AggregateBlockT | AggregateType |
Public Member Functions | |
size_t | size () const |
return the size of the grid | |
template<typename ... v_reduce> | |
void | flush (gpu::ofp_context_t &context, flush_type opt=FLUSH_ON_HOST) |
void | saveUnpackVariableIfNotKeepGeometry (int opt, bool is_unpack_remote) |
void | RestoreUnpackVariableIfKeepGeometry (int opt, bool is_unpack_remote) |
void | savePackVariableIfNotKeepGeometry (int opt, bool is_pack_remote) |
void | RestorePackVariableIfKeepGeometry (int opt, bool is_pack_remote) |
template<unsigned int n_it> | |
void | calculatePackingPointsFromBoxes (int opt, size_t tot_pnt) |
void | resize (size_t(&res)[dim]) |
resize the SparseGrid | |
SparseGridGpu (const size_t(&res)[dim], unsigned int stencilSupportRadius=1) | |
Constructor from glock geometry. | |
SparseGridGpu (linearizer &gridGeometry, unsigned int stencilSupportRadius=1) | |
Constructor from glock geometry. | |
SparseGridGpu_ker< dim, blockEdgeSize, typename BlockMapGpu< AggregateInternalT, threadBlockSize, indexT, layout_base >::AggregateInternalT, ct_par< 0, 1 >, indexT, layout_base, decltype(extendedBlockGeometry), linearizer, AggregateT > | toKernel () |
template<unsigned int nNN, unsigned int nLoop> | |
SparseGridGpu_ker< dim, blockEdgeSize, typename BlockMapGpu< AggregateInternalT, threadBlockSize, indexT, layout_base >::AggregateInternalT, ct_par< nNN, nLoop >, indexT, layout_base, decltype(extendedBlockGeometry), linearizer, AggregateT > | toKernelNN () |
void | clear () |
void | setMemory () |
auto | insertBlockFlush (size_t block) -> decltype(BMG::insertBlockFlush(block)) |
linearizer & | getGrid () |
Return the grid information object. | |
template<typename stencil_type > | |
void | setNNType () |
Set the neighborhood type. | |
constexpr unsigned int | getBlockSize () const |
template<typename CoordT > | |
size_t | getLinId (CoordT &coord) |
grid_key_dx< dim, int > | getCoord (size_t linId) const |
ite_gpu< dim > | getGridGPUIterator (const grid_key_dx< dim, int > &start, const grid_key_dx< dim, int > &stop, size_t n_thr=threadBlockSize) |
template<typename CoordT > | |
base_key | get_sparse (const grid_key_dx< dim, CoordT > &coord) const |
Get an element using the point coordinates. | |
template<unsigned int p, typename CoordT > | |
auto | get (const grid_key_dx< dim, CoordT > &coord) const -> const ScalarTypeOf< AggregateBlockT, p > & |
Get an element using the point coordinates. | |
template<unsigned int p> | |
auto | get (const sparse_grid_gpu_index< self > &coord) const -> const ScalarTypeOf< AggregateBlockT, p > & |
Get an element using sparse_grid_gpu_index (using this index it guarantee that the point exist) | |
auto | private_get_data_array () -> decltype(BlockMapGpu< AggregateInternalT, threadBlockSize, indexT, layout_base >::blockMap.getDataBuffer()) & |
Return the index array of the blocks. | |
auto | private_get_data_array () const -> decltype(BlockMapGpu< AggregateInternalT, threadBlockSize, indexT, layout_base >::blockMap.getDataBuffer()) |
Return the data array of the blocks. | |
template<typename CoordT > | |
auto | get_o (const grid_key_dx< dim, CoordT > &coord) const -> encap_data_block< typename std::remove_const< decltype(BlockMapGpu< AggregateInternalT, threadBlockSize, indexT, layout_base >::get(0))>::type > |
Get an element using the point coordinates. | |
auto | get_o (const sparse_grid_gpu_index< self > &coord) const -> encap_data_block< typename std::remove_const< decltype(private_get_data_array().get(0))>::type > |
Get an element using sparse_grid_gpu_index (using this index it guarantee that the point exist) | |
bool | isSkipLabellingPossible () |
This function check if keep geometry is possible for this grid. | |
template<unsigned int p> | |
auto | get (const sparse_grid_gpu_index< self > &coord) -> ScalarTypeOf< AggregateBlockT, p > & |
Get an element using sparse_grid_gpu_index (using this index it guarantee that the point exist) | |
unsigned char | getFlag (const sparse_grid_gpu_index< self > &coord) const |
Return the flag of the point. | |
template<unsigned int p, typename CoordT > | |
auto | insert (const CoordT &coord) -> ScalarTypeOf< AggregateBlockT, p > & |
template<typename CoordT > | |
auto | insert_o (const CoordT &coord) -> encap_data_block< typename std::remove_const< decltype(BlockMapGpu< AggregateInternalT, threadBlockSize, indexT, layout_base >::insert_o(0))>::type > |
void | construct_link (self &grid_up, self &grid_dw, gpu::ofp_context_t &context) |
construct link between levels | |
openfpm::vector_gpu< aggregate< unsigned int > > & | getDownLinksOffsets () |
Get the offsets for each point of the links down. | |
openfpm::vector_gpu< aggregate< int, short int > > & | getDownLinks () |
Get the links down for each point. | |
openfpm::vector_gpu< aggregate< unsigned int > > & | getUpLinksOffsets () |
Get the offsets for each point of the links up. | |
openfpm::vector_gpu< aggregate< int, short int > > & | getUpLinks () |
Get the links up for each point. | |
void | construct_link_dw (self &grid_dw, const Box< dim, int > &db_, Point< dim, int > p_dw, gpu::ofp_context_t &context) |
construct link on the down level | |
void | construct_link_up (self &grid_up, const Box< dim, int > &db_, Point< dim, int > p_up, gpu::ofp_context_t &context) |
construct link on the up levels | |
template<typename dim3T > | |
void | setGPUInsertBuffer (dim3T nBlock, dim3T nSlot) |
void | preFlush () |
In case we manually set the added index buffer and the add data buffer we have to call this function before flush. | |
template<typename stencil_type = NNStar<dim>, typename checker_type = No_check> | |
void | tagBoundaries (gpu::ofp_context_t &context, checker_type chk=checker_type(), tag_boundaries opt=tag_boundaries::NO_CALCULATE_EXISTING_POINTS) |
template<typename NNtype = NNStar<dim>> | |
void | findNeighbours () |
size_t | countExistingElements () const |
size_t | countBoundaryElements () |
void | measureBlockOccupancyMemory (double &mean, double &deviation) |
void | measureBlockOccupancy (double &mean, double &deviation) |
template<unsigned int prop_src, unsigned int prop_dst, unsigned int stencil_size, typename lambda_f , typename ... ArgsT> | |
void | conv_cross (grid_key_dx< 3 > start, grid_key_dx< 3 > stop, lambda_f func, ArgsT ... args) |
Apply a convolution using a cross like stencil. | |
template<unsigned int prop_src, unsigned int prop_dst, unsigned int stencil_size, typename lambda_f , typename ... ArgsT> | |
void | conv (grid_key_dx< 3 > start, grid_key_dx< 3 > stop, lambda_f func, ArgsT ... args) |
Apply a free type convolution using blocks. | |
template<unsigned int prop_src, unsigned int prop_dst, unsigned int stencil_size, typename lambda_f , typename ... ArgsT> | |
void | conv_cross_b (grid_key_dx< 3 > start, grid_key_dx< 3 > stop, lambda_f func, ArgsT ... args) |
Apply a free type convolution using blocks. | |
template<unsigned int prop_src1, unsigned int prop_src2, unsigned int prop_dst1, unsigned int prop_dst2, unsigned int stencil_size, typename lambda_f , typename ... ArgsT> | |
void | conv2_b (grid_key_dx< dim > start, grid_key_dx< dim > stop, lambda_f func, ArgsT ... args) |
Apply a free type convolution using blocks. | |
template<unsigned int prop_src1, unsigned int prop_src2, unsigned int prop_src3, unsigned int prop_dst1, unsigned int prop_dst2, unsigned int prop_dst3, unsigned int stencil_size, typename lambda_f , typename ... ArgsT> | |
void | conv3_b (grid_key_dx< dim > start, grid_key_dx< dim > stop, lambda_f func, ArgsT ... args) |
Apply a free type convolution using blocks. | |
template<unsigned int prop_src1, unsigned int prop_src2, unsigned int prop_dst1, unsigned int prop_dst2, unsigned int stencil_size, typename lambda_f , typename ... ArgsT> | |
void | conv2 (grid_key_dx< dim > start, grid_key_dx< dim > stop, lambda_f func, ArgsT ... args) |
Apply a free type convolution using blocks. | |
Box< dim, int > | getBox () |
Return a Box with the range if the SparseGrid. | |
template<typename stencil , typename... Args> | |
void | applyStencils (const Box< dim, int > &box, StencilMode mode, Args... args) |
template<typename stencil1 , typename stencil2 , typename ... otherStencils, typename... Args> | |
void | applyStencils (Box< dim, int > box, StencilMode mode, Args... args) |
template<typename CoordT > | |
size_t | getBlockLinId (const CoordT &blockCoord) const |
Linearization of block coordinates. | |
template<unsigned int p> | |
auto | insertFlush (const sparse_grid_gpu_index< self > &coord) -> ScalarTypeOf< AggregateBlockT, p > & |
Insert the point on host side and flush directly. | |
template<typename CoordT > | |
auto | insertBlockFlush (const grid_key_dx< dim, CoordT > &coord, indexT &local_id) -> decltype(BlockMapGpu< AggregateInternalT, threadBlockSize, indexT, layout_base >::insertBlockFlush(0)) |
Insert the point on host side and flush directly. | |
template<unsigned int p, typename CoordT > | |
auto | insertFlush (const grid_key_dx< dim, CoordT > &coord) -> ScalarTypeOf< AggregateBlockT, p > & |
Insert the point on host side and flush directly. | |
template<unsigned int p> | |
void | print_vct_add_data () |
template<unsigned int p> | |
void | setBackgroundValue (typename boost::mpl::at< typename AggregateT::type, boost::mpl::int_< p > >::type backgroundValue) |
set the background for property p | |
template<int ... prp> | |
void | packRequest (size_t &req) const |
Asking to pack a SparseGrid GPU without GPU context pack the grid on CPU and host memory. | |
template<int ... prp> | |
void | pack (ExtPreAlloc< HeapMemory > &mem, Pack_stat &sts) const |
Pack the object into the memory. | |
template<int ... prp> | |
void | unpack (ExtPreAlloc< HeapMemory > &mem, Unpack_stat &ps) |
Unpack the object into the memory. | |
template<int ... prp> | |
void | unpack (ExtPreAlloc< CudaMemory > &mem, Unpack_stat &ps) |
Unpack the object into the memory. | |
template<int ... prp> | |
void | packRequest (size_t &req, gpu::ofp_context_t &context) const |
memory requested to pack this object | |
template<int ... prp> | |
void | packRequest (SparseGridGpu_iterator_sub< dim, self > &sub_it, size_t &req) const |
Calculate the size to pack part of this structure. | |
void | packReset () |
Reset the pack calculation. | |
template<int ... prp> | |
void | packCalculate (size_t &req, gpu::ofp_context_t &context) |
Calculate the size of the information to pack. | |
auto | getMappingVector () -> decltype(this->blockMap.getMappingVector()) |
Return the mapping vector used to know where the data has been added. | |
auto | getMergeIndexMapVector () -> decltype(this->blockMap.getMergeIndexMapVector()) |
Return the mapping vector used to know where the data has been added. | |
template<int ... prp> | |
void | pack (ExtPreAlloc< CudaMemory > &mem, SparseGridGpu_iterator_sub< dim, self > &sub_it, Pack_stat &sts) |
Pack the object into the memory given an iterator. | |
template<unsigned int ... prp> | |
void | removeCopyToFinalize (gpu::ofp_context_t &ctx, int opt) |
It finalize the queued operations of remove() and copy_to() | |
template<int ... prp> | |
void | packFinalize (ExtPreAlloc< CudaMemory > &mem, Pack_stat &sts, int opt=0, bool is_pack_remote=false) |
Finalize the packing procedure. | |
void | removeAddUnpackReset () |
In this case it does nothing. | |
void | swap (self &gr) |
void | removePoints (gpu::ofp_context_t &context) |
Remove the points we queues to remove. | |
template<unsigned int ... prp> | |
void | removeAddUnpackFinalize (gpu::ofp_context_t &context, int opt) |
This function remove the points we queue to remove and it flush all the added/unpacked data. | |
void | copyRemoveReset () |
Reset the queue to remove and copy section of grids. | |
void | remove (const Box< dim, int > §ion_to_delete) |
Remove all the points in this region. | |
void | copy_to (self &grid_src, const Box< dim, size_t > &box_src, const Box< dim, size_t > &box_dst) |
It queue a copy. | |
template<unsigned int ... prp, typename S2 , typename header_type > | |
void | unpack_with_headers (ExtPreAlloc< S2 > &mem, SparseGridGpu_iterator_sub< dim, self > &sub_it, header_type &headers, int ih, Unpack_stat &ps, gpu::ofp_context_t &context, rem_copy_opt opt=rem_copy_opt::NONE_OPT) |
unpack the sub-grid object | |
template<unsigned int ... prp, typename S2 > | |
void | unpack (ExtPreAlloc< S2 > &mem, SparseGridGpu_iterator_sub< dim, self > &sub_it, Unpack_stat &ps, gpu::ofp_context_t &context, rem_copy_opt opt=rem_copy_opt::NONE_OPT) |
unpack the sub-grid object | |
void | removeUnusedBuffers () |
Eliminate many internal temporary buffer you can use this between flushes if you get some out of memory. | |
decltype(self::type_of_iterator()) | getIterator () const |
Return a SparseGrid iterator. | |
decltype(self::type_of_subiterator()) | getIterator (const grid_key_dx< dim > &start, const grid_key_dx< dim > &stop, int is_to_init=1) const |
Return a SparseGrid iterator only on a sub-set of elements. | |
auto | private_get_add_index_array () -> decltype(BlockMapGpu< AggregateInternalT, threadBlockSize, indexT, layout_base >::blockMap.private_get_vct_add_index()) & |
Return the index array of the blocks. | |
auto | private_get_add_index_array () const -> decltype(BlockMapGpu< AggregateInternalT, threadBlockSize, indexT, layout_base >::blockMap.private_get_vct_add_index()) & |
Return the index array of the blocks. | |
auto | private_get_index_array () const -> decltype(BlockMapGpu< AggregateInternalT, threadBlockSize, indexT, layout_base >::blockMap.getIndexBuffer()) & |
Return the index array of the blocks. | |
auto | getSegmentToOutMap () -> decltype(BlockMapGpu< AggregateInternalT, threadBlockSize, indexT, layout_base >::blockMap.getSegmentToOutMap()) |
auto | getSegmentToOutMap () const -> decltype(BlockMapGpu< AggregateInternalT, threadBlockSize, indexT, layout_base >::blockMap.getSegmentToOutMap()) |
auto | getSegmentToMergeIndexMap () -> decltype(BlockMapGpu< AggregateInternalT, threadBlockSize, indexT, layout_base >::blockMap.getSegmentToMergeIndexMap()) |
auto | getSegmentToMergeIndexMap () const -> decltype(BlockMapGpu< AggregateInternalT, threadBlockSize, indexT, layout_base >::blockMap.getSegmentToMergeIndexMap()) |
auto | private_get_index_array () -> decltype(BlockMapGpu< AggregateInternalT, threadBlockSize, indexT, layout_base >::blockMap.getIndexBuffer()) |
Return the index array of the blocks. | |
auto | private_get_neighborhood_array () -> decltype(nn_blocks) & |
Return the index array of the blocks. | |
Public Member Functions inherited from BlockMapGpu< AggregateBlockT, threadBlockSize, indexT, layout_base > | |
void | clear () |
void | swap (self &bm) |
sparse_grid_bck_value< typename std::remove_reference< decltype(blockMap.getBackground())>::type > | getBackgroundValue () |
Get the background value. | |
template<unsigned int p> | |
auto | get (unsigned int linId) const -> const ScalarTypeOf< AggregateBlockT, p > & |
auto | get (unsigned int linId) const -> const decltype(blockMap.get(0)) & |
template<unsigned int p> | |
auto | insert (unsigned int linId) -> ScalarTypeOf< AggregateBlockT, p > & |
insert data, host version | |
auto | insert_o (unsigned int linId) -> decltype(blockMap.insert(0)) |
insert data, host version | |
template<unsigned int p> | |
auto | insertBlockFlush (size_t blockId) -> decltype(blockMap.insertFlush(blockId, is_new).template get< p >()) |
insert a block + flush, host version | |
auto | insertBlockFlush (size_t blockId) -> decltype(blockMap.insertFlush(blockId, is_new)) |
insert a block + flush, host version | |
BlockMapGpu_ker< AggregateInternalT, indexT, layout_base > | toKernel () |
template<unsigned int ... prp> | |
void | deviceToHost () |
void | deviceToHost () |
template<unsigned int ... prp> | |
void | hostToDevice () |
void | hostToDevice () |
void | setGPUInsertBuffer (int nBlock, int nSlot) |
void | preFlush () |
In case we manually set the added index buffer and the add data buffer we have to call this function before flush. | |
void | initializeGPUInsertBuffer () |
template<typename ... v_reduce> | |
void | flush (gpu::ofp_context_t &context, flush_type opt=FLUSH_ON_HOST) |
template<unsigned int p, typename TypeBck > | |
void | setBackgroundValue (TypeBck backgroundValue) |
set the background for property p | |
void | removeUnusedBuffers () |
Eliminate many internal temporary buffer you can use this between flushes if you get some out of memory. | |
decltype(blockMap) & | private_get_blockMap_non_const () |
Return internal structure block map. | |
decltype(blockMap) & | private_get_blockMap () |
Return internal structure block map. | |
const decltype(blockMap) & | private_get_blockMap () const |
Return internal structure block map. | |
Static Public Member Functions | |
template<typename stencil = no_stencil> | |
static SparseGridGpu_iterator_sub< dim, self > | type_of_subiterator () |
This is a meta-function return which type of sub iterator a grid produce. | |
static SparseGridGpu_iterator< dim, self > | type_of_iterator () |
This is a meta-function return which type of iterator a grid produce. | |
template<typename dim3T > | |
static int | dim3SizeToInt (dim3T d) |
static int | dim3SizeToInt (size_t d) |
static int | dim3SizeToInt (unsigned int d) |
static constexpr unsigned int | getBlockEdgeSize () |
template<typename BitMaskT > | |
static bool | isPadding (BitMaskT &bitMask) |
template<typename BitMaskT > | |
static void | setPadding (BitMaskT &bitMask) |
template<typename BitMaskT > | |
static void | unsetPadding (BitMaskT &bitMask) |
static bool | pack () |
static bool | packRequest () |
static constexpr bool | isCompressed () |
This is a multiresolution sparse grid so is a compressed format. | |
template<typename pointers_type , typename headers_type , typename result_type , unsigned int ... prp> | |
static void | unpack_headers (pointers_type &pointers, headers_type &headers, result_type &result, int n_slot) |
Stub does not do anything. | |
static bool | is_unpack_header_supported () |
Indicate that unpacking the header is supported. | |
Static Public Member Functions inherited from BlockMapGpu< AggregateBlockT, threadBlockSize, indexT, layout_base > | |
template<typename BitMaskT > | |
static bool | getBit (const BitMaskT &bitMask, unsigned char pos) |
template<typename BitMaskT > | |
static bool | setBit (BitMaskT &bitMask, unsigned char pos) |
template<typename BitMaskT > | |
static bool | unsetBit (BitMaskT &bitMask, unsigned char pos) |
template<typename BitMaskT > | |
static bool | exist (BitMaskT &bitMask) |
template<typename BitMaskT > | |
static void | setExist (BitMaskT &bitMask) |
template<typename BitMaskT > | |
static void | unsetExist (BitMaskT &bitMask) |
Static Public Attributes | |
static constexpr unsigned int | dims = dim |
static constexpr unsigned int | blockEdgeSize_ = blockEdgeSize |
Protected Types | |
typedef AggregateBlockT | AggregateInternalT |
Protected Types inherited from BlockMapGpu< AggregateBlockT, threadBlockSize, indexT, layout_base > | |
typedef AggregateAppend< DataBlock< unsignedchar, BlockT0::size >, AggregateBlockT >::type | AggregateInternalT |
Static Protected Attributes | |
static constexpr unsigned int | blockSize = BlockTypeOf<AggregateBlockT, 0>::size |
Static Protected Attributes inherited from BlockMapGpu< AggregateBlockT, threadBlockSize, indexT, layout_base > | |
static const unsigned char | EXIST_BIT = 0 |
static const unsigned int | pMask = AggregateInternalT::max_prop_real - 1 |
Private Types | |
typedef BlockMapGpu< typename aggregate_convert< dim, blockEdgeSize, AggregateT >::type, threadBlockSize, indexT, layout_base > | BMG |
typedef aggregate_convert< dim, blockEdgeSize, AggregateT >::type | AggregateBlockT |
typedef SparseGridGpu< dim, AggregateT, blockEdgeSize, threadBlockSize, indexT, layout_base, linearizer > | self |
typedef aggregate_convert< dim, blockEdgeSize, aggregate< int > >::type | convertAggr |
Private Member Functions | |
void | swap_internal_remote () |
void | swap_internal_local () |
void | swap_local_pack () |
void | swap_remote_pack () |
void | computeSizeOfGhostLayer () |
void | allocateGhostLayerMapping () |
template<typename stencil_type > | |
void | computeGhostLayerMapping () |
void | initialize (const size_t(&res)[dim]) |
template<typename stencil , typename... Args> | |
void | applyStencilInPlace (const Box< dim, int > &box, StencilMode &mode, Args... args) |
template<typename stencil , typename... Args> | |
void | applyStencilInPlaceNoShared (const Box< dim, int > &box, StencilMode &mode, Args... args) |
template<typename ids_type > | |
void | fill_chunks_boxes (openfpm::vector< SpaceBox< dim, double > > &chunks_box, ids_type &chunk_ids, Point< dim, double > &spacing, Point< dim, double > &offset) |
template<typename MemType , unsigned int ... prp> | |
void | preUnpack (ExtPreAlloc< MemType > *prAlloc_prp, gpu::ofp_context_t &ctx, int opt) |
template<unsigned int ... prp> | |
void | removeCopyToFinalize_phase1 (gpu::ofp_context_t &ctx, int opt) |
template<unsigned int ... prp> | |
void | removeCopyToFinalize_phase2 (gpu::ofp_context_t &ctx, int opt) |
template<unsigned int ... prp> | |
void | removeCopyToFinalize_phase3 (gpu::ofp_context_t &ctx, int opt, bool is_unpack_remote) |
template<unsigned int n_it, unsigned int ... prp> | |
void | pack_sg_implement (ExtPreAlloc< CudaMemory > &mem, Pack_stat &sts, int opt, bool is_pack_remote) |
template<unsigned int ... prp, typename S2 > | |
void | addAndConvertPackedChunkToTmp (ExtPreAlloc< S2 > &mem, SparseGridGpu_iterator_sub< dim, self > &sub_it, Unpack_stat &ps, gpu::ofp_context_t &context) |
unpack the sub-grid object | |
template<typename origPackType , typename IteratorType > | |
void | convertChunkIds (short int *offset, origPackType &origPack, IteratorType &sub_it) |
convert the offset index from the packed to the add buffer | |
Static Private Attributes | |
static const unsigned char | PADDING_BIT = 1 |
Additional Inherited Members | |
Protected Attributes inherited from BlockMapGpu< AggregateBlockT, threadBlockSize, indexT, layout_base > | |
openfpm::vector_sparse_gpu_block< AggregateInternalT, BlockMapGpuFunctors::BlockFunctor< threadBlockSize >, indexT > | blockMap |
|
private |
Definition at line 505 of file SparseGridGpu.hpp.
|
protected |
Definition at line 704 of file SparseGridGpu.hpp.
typedef sparse_grid_gpu_index<self> SparseGridGpu< dim, AggregateT, blockEdgeSize, threadBlockSize, indexT, layout_base, linearizer >::base_key |
Definition at line 719 of file SparseGridGpu.hpp.
|
private |
Definition at line 502 of file SparseGridGpu.hpp.
|
private |
Definition at line 563 of file SparseGridGpu.hpp.
typedef self SparseGridGpu< dim, AggregateT, blockEdgeSize, threadBlockSize, indexT, layout_base, linearizer >::device_grid_type |
Definition at line 1670 of file SparseGridGpu.hpp.
typedef linearizer SparseGridGpu< dim, AggregateT, blockEdgeSize, threadBlockSize, indexT, layout_base, linearizer >::grid_info |
Definition at line 713 of file SparseGridGpu.hpp.
typedef indexT SparseGridGpu< dim, AggregateT, blockEdgeSize, threadBlockSize, indexT, layout_base, linearizer >::indexT_ |
Definition at line 721 of file SparseGridGpu.hpp.
typedef decltype(std::declval<BMG>().toKernel().insertBlock(0)) SparseGridGpu< dim, AggregateT, blockEdgeSize, threadBlockSize, indexT, layout_base, linearizer >::insert_encap |
Definition at line 723 of file SparseGridGpu.hpp.
using SparseGridGpu< dim, AggregateT, blockEdgeSize, threadBlockSize, indexT, layout_base, linearizer >::layout_mfunc = memory_traits_inte<Tfunc> |
Definition at line 717 of file SparseGridGpu.hpp.
typedef linearizer SparseGridGpu< dim, AggregateT, blockEdgeSize, threadBlockSize, indexT, layout_base, linearizer >::linearizer_type |
Definition at line 715 of file SparseGridGpu.hpp.
|
private |
Definition at line 517 of file SparseGridGpu.hpp.
typedef AggregateT SparseGridGpu< dim, AggregateT, blockEdgeSize, threadBlockSize, indexT, layout_base, linearizer >::value_type |
Definition at line 1668 of file SparseGridGpu.hpp.
typedef int SparseGridGpu< dim, AggregateT, blockEdgeSize, threadBlockSize, indexT, layout_base, linearizer >::yes_i_am_grid |
it define that this data-structure is a grid
Definition at line 709 of file SparseGridGpu.hpp.
|
inline |
Definition at line 1672 of file SparseGridGpu.hpp.
|
inline |
Constructor from glock geometry.
Definition at line 1690 of file SparseGridGpu.hpp.
|
inline |
Constructor from glock geometry.
Definition at line 1700 of file SparseGridGpu.hpp.
|
inlineprivate |
unpack the sub-grid object
prp | properties to unpack |
mem | preallocated memory from where to unpack the object |
sub | sub-grid iterator |
obj | object where to unpack |
Definition at line 1417 of file SparseGridGpu.hpp.
|
inlineprivate |
Definition at line 886 of file SparseGridGpu.hpp.
|
inlineprivate |
Definition at line 955 of file SparseGridGpu.hpp.
|
inlineprivate |
Definition at line 1052 of file SparseGridGpu.hpp.
|
inline |
Definition at line 2726 of file SparseGridGpu.hpp.
|
inline |
Definition at line 2701 of file SparseGridGpu.hpp.
|
inline |
Definition at line 833 of file SparseGridGpu.hpp.
|
inline |
Reset the structure
Definition at line 1790 of file SparseGridGpu.hpp.
|
inlineprivate |
Definition at line 892 of file SparseGridGpu.hpp.
|
inlineprivate |
Definition at line 871 of file SparseGridGpu.hpp.
|
inline |
construct link between levels
\praram grid_up grid level up
grid_dw | grid level down |
Definition at line 2022 of file SparseGridGpu.hpp.
|
inline |
construct link on the down level
grid_dw | grid level down |
db | domain box |
p_dw | point offset when you go down |
gpu | context |
Definition at line 2109 of file SparseGridGpu.hpp.
|
inline |
construct link on the up levels
\praram grid_up grid level up
Definition at line 2187 of file SparseGridGpu.hpp.
|
inline |
Apply a free type convolution using blocks.
Definition at line 2584 of file SparseGridGpu.hpp.
|
inline |
Apply a free type convolution using blocks.
Definition at line 2666 of file SparseGridGpu.hpp.
|
inline |
Apply a free type convolution using blocks.
Definition at line 2624 of file SparseGridGpu.hpp.
|
inline |
Apply a free type convolution using blocks.
Definition at line 2646 of file SparseGridGpu.hpp.
|
inline |
Apply a convolution using a cross like stencil.
in 2D for example the stencil is
* * * * *
Definition at line 2565 of file SparseGridGpu.hpp.
|
inline |
Apply a free type convolution using blocks.
Definition at line 2604 of file SparseGridGpu.hpp.
|
inlineprivate |
convert the offset index from the packed to the add buffer
Definition at line 1613 of file SparseGridGpu.hpp.
|
inline |
It queue a copy.
grid_src | source grid |
box_src | gource box |
box_dst | destination box |
Definition at line 3546 of file SparseGridGpu.hpp.
|
inline |
Reset the queue to remove and copy section of grids.
Definition at line 3500 of file SparseGridGpu.hpp.
|
inline |
Definition at line 2449 of file SparseGridGpu.hpp.
|
inline |
Definition at line 2418 of file SparseGridGpu.hpp.
|
inlinestatic |
Definition at line 757 of file SparseGridGpu.hpp.
|
inlinestatic |
Definition at line 762 of file SparseGridGpu.hpp.
|
inlinestatic |
Definition at line 767 of file SparseGridGpu.hpp.
|
inlineprivate |
Definition at line 1078 of file SparseGridGpu.hpp.
|
inline |
Definition at line 2393 of file SparseGridGpu.hpp.
|
inline |
Definition at line 773 of file SparseGridGpu.hpp.
|
inline |
Get an element using the point coordinates.
p | property index |
coord | point coordinates |
Definition at line 1894 of file SparseGridGpu.hpp.
|
inline |
Get an element using sparse_grid_gpu_index (using this index it guarantee that the point exist)
p | property index |
element |
Definition at line 1983 of file SparseGridGpu.hpp.
|
inline |
Get an element using sparse_grid_gpu_index (using this index it guarantee that the point exist)
p | property index |
element |
Definition at line 1909 of file SparseGridGpu.hpp.
|
inline |
Get an element using the point coordinates.
coord | point coordinates |
Definition at line 1942 of file SparseGridGpu.hpp.
|
inline |
Get an element using sparse_grid_gpu_index (using this index it guarantee that the point exist)
element |
Definition at line 1958 of file SparseGridGpu.hpp.
|
inline |
Get an element using the point coordinates.
p | property index |
coord | point coordinates |
Definition at line 1865 of file SparseGridGpu.hpp.
|
inlinestaticconstexpr |
Definition at line 1828 of file SparseGridGpu.hpp.
|
inline |
Linearization of block coordinates.
blockCoord | block coordinates |
Definition at line 2761 of file SparseGridGpu.hpp.
|
inlineconstexpr |
Definition at line 1833 of file SparseGridGpu.hpp.
|
inline |
Return a Box with the range if the SparseGrid.
Definition at line 2686 of file SparseGridGpu.hpp.
|
inline |
Definition at line 1845 of file SparseGridGpu.hpp.
|
inline |
Get the links down for each point.
Definition at line 2076 of file SparseGridGpu.hpp.
|
inline |
Get the offsets for each point of the links down.
Definition at line 2066 of file SparseGridGpu.hpp.
|
inline |
Return the flag of the point.
It indicate for example is if the point is a padding point (internaly it return the pMask flag)
Definition at line 1995 of file SparseGridGpu.hpp.
|
inline |
Return the grid information object.
Definition at line 1811 of file SparseGridGpu.hpp.
|
inline |
Definition at line 1850 of file SparseGridGpu.hpp.
|
inline |
Return a SparseGrid iterator.
Definition at line 3747 of file SparseGridGpu.hpp.
|
inline |
Return a SparseGrid iterator only on a sub-set of elements.
Definition at line 3757 of file SparseGridGpu.hpp.
|
inline |
Definition at line 1840 of file SparseGridGpu.hpp.
|
inline |
Return the mapping vector used to know where the data has been added.
Definition at line 3211 of file SparseGridGpu.hpp.
|
inline |
Return the mapping vector used to know where the data has been added.
Definition at line 3221 of file SparseGridGpu.hpp.
|
inline |
Definition at line 3802 of file SparseGridGpu.hpp.
|
inline |
Definition at line 3807 of file SparseGridGpu.hpp.
|
inline |
Definition at line 3792 of file SparseGridGpu.hpp.
|
inline |
Definition at line 3797 of file SparseGridGpu.hpp.
|
inline |
Get the links up for each point.
Definition at line 2096 of file SparseGridGpu.hpp.
|
inline |
Get the offsets for each point of the links up.
Definition at line 2086 of file SparseGridGpu.hpp.
|
inlineprivate |
Definition at line 935 of file SparseGridGpu.hpp.
|
inline |
Definition at line 2001 of file SparseGridGpu.hpp.
|
inline |
Definition at line 2007 of file SparseGridGpu.hpp.
|
inline |
Insert the point on host side and flush directly.
First you have to move everything on host with deviceToHost, insertFlush and than move to GPU again
grid | point where to insert |
Definition at line 2803 of file SparseGridGpu.hpp.
|
inline |
Definition at line 1801 of file SparseGridGpu.hpp.
|
inline |
Insert the point on host side and flush directly.
First you have to move everything on host with deviceToHost, insertFlush and than move to GPU again
grid | point where to insert |
Definition at line 2828 of file SparseGridGpu.hpp.
|
inline |
Insert the point on host side and flush directly.
First you have to move everything on host with deviceToHost, insertFlush and than move to GPU again
grid | point where to insert |
Definition at line 2777 of file SparseGridGpu.hpp.
|
inlinestatic |
Indicate that unpacking the header is supported.
Definition at line 3648 of file SparseGridGpu.hpp.
|
inlinestaticconstexpr |
This is a multiresolution sparse grid so is a compressed format.
Definition at line 3534 of file SparseGridGpu.hpp.
|
inlinestatic |
Definition at line 2733 of file SparseGridGpu.hpp.
|
inline |
This function check if keep geometry is possible for this grid.
Definition at line 1968 of file SparseGridGpu.hpp.
|
inline |
Definition at line 2516 of file SparseGridGpu.hpp.
|
inline |
Definition at line 2481 of file SparseGridGpu.hpp.
|
inlinestatic |
Definition at line 2885 of file SparseGridGpu.hpp.
|
inline |
Pack the object into the memory given an iterator.
prp | properties to pack |
mem | preallocated memory where to pack the objects |
sub_it | sub grid iterator ( or the elements in the grid to pack ) |
sts | pack statistic |
Definition at line 3240 of file SparseGridGpu.hpp.
|
inline |
Pack the object into the memory.
prp | properties to pack |
mem | preallocated memory where to pack the objects |
sts | pack statistic |
Definition at line 2922 of file SparseGridGpu.hpp.
|
inlineprivate |
Definition at line 1289 of file SparseGridGpu.hpp.
|
inline |
Calculate the size of the information to pack.
req | output size (it does not reset the counter it accumulate) |
context | gpu contect |
Definition at line 3073 of file SparseGridGpu.hpp.
|
inline |
Finalize the packing procedure.
prp | properties to pack |
mem | preallocated memory where to pack the objects |
sub_it | sub grid iterator ( or the elements in the grid to pack ) |
sts | pack statistic |
Definition at line 3339 of file SparseGridGpu.hpp.
|
inlinestatic |
Definition at line 2891 of file SparseGridGpu.hpp.
|
inline |
Asking to pack a SparseGrid GPU without GPU context pack the grid on CPU and host memory.
Definition at line 2901 of file SparseGridGpu.hpp.
|
inline |
memory requested to pack this object
req | request |
Definition at line 2980 of file SparseGridGpu.hpp.
|
inline |
Calculate the size to pack part of this structure.
prp | set of properties to pack |
sub | sub-grid to pack |
req | output byte |
Definition at line 3037 of file SparseGridGpu.hpp.
|
inline |
Reset the pack calculation.
Definition at line 3053 of file SparseGridGpu.hpp.
|
inline |
In case we manually set the added index buffer and the add data buffer we have to call this function before flush.
Definition at line 2281 of file SparseGridGpu.hpp.
|
inlineprivate |
Definition at line 1097 of file SparseGridGpu.hpp.
|
inline |
Definition at line 2844 of file SparseGridGpu.hpp.
|
inline |
Return the index array of the blocks.
Definition at line 3767 of file SparseGridGpu.hpp.
|
inline |
Return the index array of the blocks.
Definition at line 3777 of file SparseGridGpu.hpp.
|
inline |
Return the index array of the blocks.
Definition at line 1919 of file SparseGridGpu.hpp.
|
inline |
Return the data array of the blocks.
Definition at line 1929 of file SparseGridGpu.hpp.
|
inline |
Return the index array of the blocks.
Definition at line 3817 of file SparseGridGpu.hpp.
|
inline |
Return the index array of the blocks.
Definition at line 3787 of file SparseGridGpu.hpp.
|
inline |
Return the index array of the blocks.
Definition at line 3827 of file SparseGridGpu.hpp.
|
inline |
Remove all the points in this region.
box_src | box to kill the points |
Definition at line 3524 of file SparseGridGpu.hpp.
|
inline |
This function remove the points we queue to remove and it flush all the added/unpacked data.
Definition at line 3488 of file SparseGridGpu.hpp.
|
inline |
In this case it does nothing.
Definition at line 3372 of file SparseGridGpu.hpp.
|
inline |
It finalize the queued operations of remove() and copy_to()
In particular suppose we have 3 grids and we copy sections of the grid 1 into 2 and 3 , sections of grid 2 into 1 and 3 and sections of grid 3 into 1 and 2. Than we have to first call on all 3 grids removeCopyFinalize with PHASE1. Than we call removeCopyFinalize with PHASE2 on all 3 grids and finally removeCopyFinalize with PHASE3
In case we can guarantee that the chunks structure has not changed we can pass the option KEEP_GEOMETRY to make this function faster
ctx | context |
options |
Definition at line 3311 of file SparseGridGpu.hpp.
|
inlineprivate |
Definition at line 1117 of file SparseGridGpu.hpp.
|
inlineprivate |
Definition at line 1124 of file SparseGridGpu.hpp.
|
inlineprivate |
Definition at line 1176 of file SparseGridGpu.hpp.
|
inline |
Remove the points we queues to remove.
context | modern gpu context |
Definition at line 3413 of file SparseGridGpu.hpp.
|
inline |
Eliminate many internal temporary buffer you can use this between flushes if you get some out of memory.
Definition at line 3735 of file SparseGridGpu.hpp.
|
inline |
resize the SparseGrid
res | indicate the resolution in each dimension |
Definition at line 1681 of file SparseGridGpu.hpp.
|
inline |
Definition at line 817 of file SparseGridGpu.hpp.
|
inline |
Definition at line 792 of file SparseGridGpu.hpp.
|
inline |
Definition at line 802 of file SparseGridGpu.hpp.
|
inline |
Definition at line 783 of file SparseGridGpu.hpp.
|
inline |
set the background for property p
p | property p |
Definition at line 2875 of file SparseGridGpu.hpp.
|
inline |
\Brief Before insert any element you have to call this function to initialize the insert buffer
nBlock | number of blocks the insert buffer has |
nSlot | maximum number of insertion each block does |
Definition at line 2267 of file SparseGridGpu.hpp.
|
inline |
Definition at line 1798 of file SparseGridGpu.hpp.
|
inline |
Set the neighborhood type.
stencil_type | Type of stencil |
Definition at line 1822 of file SparseGridGpu.hpp.
|
inlinestatic |
Definition at line 2740 of file SparseGridGpu.hpp.
|
inline |
return the size of the grid
Definition at line 730 of file SparseGridGpu.hpp.
|
inline |
Swap the content of two sarse grid
gr | sparse grid from which to swap |
Definition at line 3399 of file SparseGridGpu.hpp.
|
inlineprivate |
Definition at line 656 of file SparseGridGpu.hpp.
|
inlineprivate |
Definition at line 646 of file SparseGridGpu.hpp.
|
inlineprivate |
Definition at line 669 of file SparseGridGpu.hpp.
|
inlineprivate |
Definition at line 685 of file SparseGridGpu.hpp.
|
inline |
Definition at line 2287 of file SparseGridGpu.hpp.
|
inline |
Definition at line 1723 of file SparseGridGpu.hpp.
|
inline |
Definition at line 1761 of file SparseGridGpu.hpp.
|
inlinestatic |
This is a meta-function return which type of iterator a grid produce.
Definition at line 751 of file SparseGridGpu.hpp.
|
inlinestatic |
This is a meta-function return which type of sub iterator a grid produce.
Definition at line 741 of file SparseGridGpu.hpp.
|
inline |
Unpack the object into the memory.
prp | properties to pack |
mem | preallocated memory where to pack the objects |
sts | pack statistic |
Definition at line 2967 of file SparseGridGpu.hpp.
|
inline |
Unpack the object into the memory.
prp | properties to pack |
mem | preallocated memory where to pack the objects |
sts | pack statistic |
Definition at line 2944 of file SparseGridGpu.hpp.
|
inline |
unpack the sub-grid object
prp | properties to unpack |
mem | preallocated memory from where to unpack the object |
sub | sub-grid iterator |
obj | object where to unpack |
Definition at line 3661 of file SparseGridGpu.hpp.
|
inlinestatic |
Stub does not do anything.
Definition at line 3564 of file SparseGridGpu.hpp.
|
inline |
unpack the sub-grid object
prp | properties to unpack |
mem | preallocated memory from where to unpack the object |
sub | sub-grid iterator |
obj | object where to unpack |
Definition at line 3591 of file SparseGridGpu.hpp.
|
inlinestatic |
Definition at line 2747 of file SparseGridGpu.hpp.
|
private |
Definition at line 515 of file SparseGridGpu.hpp.
|
staticconstexpr |
Definition at line 711 of file SparseGridGpu.hpp.
|
staticconstexprprotected |
Definition at line 703 of file SparseGridGpu.hpp.
|
private |
Definition at line 569 of file SparseGridGpu.hpp.
|
private |
Definition at line 570 of file SparseGridGpu.hpp.
|
private |
Definition at line 571 of file SparseGridGpu.hpp.
|
private |
Definition at line 566 of file SparseGridGpu.hpp.
|
private |
Definition at line 567 of file SparseGridGpu.hpp.
|
private |
Definition at line 568 of file SparseGridGpu.hpp.
|
private |
Definition at line 523 of file SparseGridGpu.hpp.
|
private |
Definition at line 551 of file SparseGridGpu.hpp.
|
private |
Definition at line 552 of file SparseGridGpu.hpp.
|
private |
Definition at line 553 of file SparseGridGpu.hpp.
|
private |
Definition at line 534 of file SparseGridGpu.hpp.
|
private |
Definition at line 535 of file SparseGridGpu.hpp.
|
private |
Definition at line 536 of file SparseGridGpu.hpp.
|
staticconstexpr |
Definition at line 496 of file SparseGridGpu.hpp.
|
private |
set of existing points the formats is id/blockSize = data block poosition id % blockSize = offset
Definition at line 575 of file SparseGridGpu.hpp.
|
private |
Definition at line 576 of file SparseGridGpu.hpp.
|
private |
Definition at line 577 of file SparseGridGpu.hpp.
|
private |
Definition at line 507 of file SparseGridGpu.hpp.
|
private |
Definition at line 644 of file SparseGridGpu.hpp.
|
private |
Definition at line 510 of file SparseGridGpu.hpp.
|
private |
For stencil in a block-wise computation we have to load blocks + ghosts area. The ghost area live in neighborhood blocks For example the left ghost margin live in the right part of the left located neighborhood block, the right margin live in the left part of the of the right located neighborhood block, the top ... The first index indicate the index of the point in the block + ghost area, the second index indicate the correspondent neighborhood index (in a star like 0 mean negative x 1 positive x, 1 mean negative y and so on)
Definition at line 589 of file SparseGridGpu.hpp.
|
private |
Definition at line 506 of file SparseGridGpu.hpp.
|
private |
Definition at line 508 of file SparseGridGpu.hpp.
|
private |
Definition at line 528 of file SparseGridGpu.hpp.
|
private |
Definition at line 529 of file SparseGridGpu.hpp.
|
private |
Definition at line 530 of file SparseGridGpu.hpp.
|
mutableprivate |
Size of the index vector packed. These varaible are used to understand if the option KEEP_GEOMETRY can be used keep geometry option infact require that when we record the packing variables the number of chunks (and chunks indexes) does not change
Definition at line 620 of file SparseGridGpu.hpp.
|
mutableprivate |
Definition at line 621 of file SparseGridGpu.hpp.
|
private |
links of the padding points with real points of a finer sparsegrid
Definition at line 630 of file SparseGridGpu.hpp.
|
private |
scan offsets of the links down
Definition at line 627 of file SparseGridGpu.hpp.
|
private |
links of the padding points with real points of a finer sparsegrid
Definition at line 636 of file SparseGridGpu.hpp.
|
private |
scan offsets of the links down
Definition at line 633 of file SparseGridGpu.hpp.
|
private |
links of the padding points with real points of a coarse sparsegrid
Definition at line 624 of file SparseGridGpu.hpp.
|
private |
Definition at line 540 of file SparseGridGpu.hpp.
|
private |
Definition at line 541 of file SparseGridGpu.hpp.
|
private |
Definition at line 542 of file SparseGridGpu.hpp.
|
private |
Definition at line 525 of file SparseGridGpu.hpp.
|
private |
Definition at line 554 of file SparseGridGpu.hpp.
|
private |
Definition at line 555 of file SparseGridGpu.hpp.
|
private |
Definition at line 556 of file SparseGridGpu.hpp.
|
private |
Definition at line 557 of file SparseGridGpu.hpp.
|
private |
Definition at line 558 of file SparseGridGpu.hpp.
|
private |
Definition at line 559 of file SparseGridGpu.hpp.
|
private |
Definition at line 561 of file SparseGridGpu.hpp.
|
private |
Definition at line 562 of file SparseGridGpu.hpp.
|
private |
Definition at line 560 of file SparseGridGpu.hpp.
|
mutableprivate |
Map between the (Last) added chunks and their position in chunks data.
Definition at line 608 of file SparseGridGpu.hpp.
|
mutableprivate |
Definition at line 609 of file SparseGridGpu.hpp.
|
mutableprivate |
Definition at line 610 of file SparseGridGpu.hpp.
|
private |
Definition at line 591 of file SparseGridGpu.hpp.
|
private |
Definition at line 537 of file SparseGridGpu.hpp.
|
private |
Definition at line 545 of file SparseGridGpu.hpp.
|
private |
Definition at line 546 of file SparseGridGpu.hpp.
|
private |
Definition at line 547 of file SparseGridGpu.hpp.
|
private |
Definition at line 538 of file SparseGridGpu.hpp.
|
private |
Definition at line 539 of file SparseGridGpu.hpp.
|
private |
Helper array to pack points.
Definition at line 580 of file SparseGridGpu.hpp.
|
private |
Definition at line 581 of file SparseGridGpu.hpp.
|
private |
Definition at line 582 of file SparseGridGpu.hpp.
|
mutableprivate |
the set of all sub-set to pack
Definition at line 613 of file SparseGridGpu.hpp.
|
mutableprivate |
Definition at line 614 of file SparseGridGpu.hpp.
|
mutableprivate |
Definition at line 615 of file SparseGridGpu.hpp.
|
staticprivate |
Definition at line 504 of file SparseGridGpu.hpp.
|
private |
Memory to remove copy finalize.
Definition at line 639 of file SparseGridGpu.hpp.
|
private |
Definition at line 520 of file SparseGridGpu.hpp.
|
private |
Definition at line 511 of file SparseGridGpu.hpp.
|
private |
Definition at line 512 of file SparseGridGpu.hpp.
|
private |
Definition at line 513 of file SparseGridGpu.hpp.
|
mutableprivate |
contain the scan of the point for each iterator
Definition at line 605 of file SparseGridGpu.hpp.
|
private |
Definition at line 531 of file SparseGridGpu.hpp.
|
private |
Definition at line 548 of file SparseGridGpu.hpp.
|
private |
Definition at line 549 of file SparseGridGpu.hpp.
|
private |
Definition at line 550 of file SparseGridGpu.hpp.
|
private |
Definition at line 532 of file SparseGridGpu.hpp.
|
private |
Definition at line 533 of file SparseGridGpu.hpp.
|
private |
shifts for chunk conversion
Definition at line 642 of file SparseGridGpu.hpp.
|
private |
Definition at line 509 of file SparseGridGpu.hpp.
|
mutableprivate |
temporal
Definition at line 594 of file SparseGridGpu.hpp.
|
mutableprivate |
temporal 2
Definition at line 599 of file SparseGridGpu.hpp.
|
mutableprivate |
temporal 3
Definition at line 602 of file SparseGridGpu.hpp.
|
mutableprivate |
Definition at line 595 of file SparseGridGpu.hpp.
|
mutableprivate |
Definition at line 596 of file SparseGridGpu.hpp.