|
|
using | BlocksArray = Containers::StaticArray< detail::CSRAdaptiveKernelParameters<>::MaxValueSizeLog, BlocksType > |
| | Type for arrays of descriptor blocks of AdaptiveCSR.
|
|
using | BlocksType = TNL::Containers::Vector< detail::CSRAdaptiveKernelBlockDescriptor< IndexType >, Device, IndexType > |
| | Type for descriptor blocks of AdaptiveCSR.
|
|
using | BlocksView = typename BlocksType::ViewType |
| | View for the descriptor blocks of AdaptiveCSR.
|
|
using | BlocksViewArray = Containers::StaticArray< detail::CSRAdaptiveKernelParameters<>::MaxValueSizeLog, BlocksView > |
| | Type for arrays of descriptor blocks view of AdaptiveCSR.
|
|
using | ConstViewType = AdaptiveCSRView< Device, std::add_const_t< Index > > |
| | Type of constant segments view.
|
|
using | OffsetsView = typename Base::OffsetsView |
| | View for the container holding CSR offsets.
|
| template<typename Device_, typename Index_> |
| using | ViewTemplate = AdaptiveCSRView< Device_, Index_ > |
| | Templated view type.
|
|
using | ViewType = AdaptiveCSRView< Device, Index > |
| | Type of segments view.
|
|
using | ConstViewType = CSRView< Device, std::add_const_t< Index > > |
| | Type of constant segments view.
|
| template<typename Device_, typename Index_> |
| using | ViewTemplate = CSRView< Device_, Index_ > |
| | Templated view type.
|
|
using | ViewType = CSRView |
| | Type of segments view.
|
|
using | ConstOffsetsView = typename OffsetsView::ConstViewType |
| | The type for representing the constant vector view with segment offsets used in the CSR format.
|
|
using | DeviceType = Device |
| | The device where the segments are operating.
|
|
using | IndexType = std::remove_const_t< Index > |
| | The type used for indexing of segments elements.
|
|
using | OffsetsView = Containers::VectorView< Index, DeviceType, IndexType > |
| | The type for representing the vector view with segment offsets used in the CSR format.
|
|
using | SegmentViewType = SegmentView< IndexType, RowMajorOrder > |
| | Accessor type for one particular segment.
|
|
|
__cuda_callable__ | AdaptiveCSRView ()=default |
| | Default constructor with no parameters to create empty segments view.
|
|
__cuda_callable__ | AdaptiveCSRView (AdaptiveCSRView &&) noexcept |
| | Move constructor.
|
|
__cuda_callable__ | AdaptiveCSRView (const AdaptiveCSRView &) |
| | Copy constructor.
|
|
__cuda_callable__ | AdaptiveCSRView (const CSRView< Device, Index > &csrView, BlocksArray &blocks) |
| | Binds a new CSR view together with blocks of AdaptiveCSR.
|
|
__cuda_callable__ | AdaptiveCSRView (const CSRView< Device, Index > &csrView, const BlocksViewArray &blocks) |
| | Binds a new CSR view together with blocks of AdaptiveCSR.
|
|
__cuda_callable__ void | bind (AdaptiveCSRView view) |
| | Method for rebinding (reinitialization) to another view.
|
|
__cuda_callable__ void | bind (OffsetsView offsets, BlocksArray &blocks) |
| | Method for rebinding (reinitialization) using another CSR offsets and AdaptiveCSR blocks.
|
|
__cuda_callable__ void | bind (OffsetsView offsets, const BlocksViewArray &blocks) |
| | Method for rebinding (reinitialization) using another CSR offsets and AdaptiveCSR blocks.
|
|
__cuda_callable__ const BlocksViewArray & | getBlocks () const |
| | Returns a view with blocks of AdaptiveCSR.
|
|
__cuda_callable__ ConstViewType | getConstView () const |
| | Returns a constant view for this instance of segments which can by used for example in lambda functions running in GPU kernels.
|
|
__cuda_callable__ ViewType | getView () |
| | Returns a view for this instance of segments which can by used for example in lambda functions running in GPU kernels.
|
| void | load (File &file) |
| | Method for loading the segments from a file in a binary form.
|
|
AdaptiveCSRView & | operator= (const AdaptiveCSRView< Index, Device > &&kernelView)=delete |
| | Move-assignment operator.
|
|
AdaptiveCSRView & | operator= (const AdaptiveCSRView< Index, Device > &kernelView)=delete |
| | Copy-assignment operator.
|
|
void | printBlocks (int idx=1, std::ostream &os=std::cout) const |
| | Print the blocks of AdaptiveCSR.
|
| void | save (File &file) const |
| | Method for saving the segments to a file in a binary form.
|
|
void | setBlocks (BlocksType &blocks, int idx) |
| | Method for setting AdaptiveCSR blocks.
|
|
__cuda_callable__ | CSRView ()=default |
| | Default constructor with no parameters to create empty segments view.
|
|
__cuda_callable__ | CSRView (const CSRView &)=default |
| | Copy constructor.
|
|
__cuda_callable__ | CSRView (CSRView &&) noexcept=default |
| | Move constructor.
|
|
__cuda_callable__ | CSRView (typename Base::OffsetsView offsets) |
| | Binds a new CSR view to an offsets vector.
|
|
__cuda_callable__ void | bind (CSRView view) |
| | Method for rebinding (reinitialization) to another view.
|
|
__cuda_callable__ ConstViewType | getConstView () const |
| | Returns a constant view for this instance of segments which can by used for example in lambda functions running in GPU kernels.
|
|
__cuda_callable__ ViewType | getView () |
| | Returns a view for this instance of segments which can by used for example in lambda functions running in GPU kernels.
|
| void | load (File &file) |
| | Method for loading the segments from a file in a binary form.
|
|
CSRView & | operator= (const CSRView &)=delete |
| | Copy-assignment operator.
|
|
CSRView & | operator= (CSRView &&)=delete |
| | Move-assignment operator.
|
| void | save (File &file) const |
| | Method for saving the segments to a file in a binary form.
|
|
__cuda_callable__ | CSRBase ()=default |
| | Default constructor with no parameters to create empty segments view.
|
|
__cuda_callable__ | CSRBase (const CSRBase &)=default |
| | Copy constructor.
|
|
__cuda_callable__ | CSRBase (const OffsetsView &offsets) |
| | Binds a new CSR view to an offsets vector.
|
|
__cuda_callable__ | CSRBase (CSRBase &&) noexcept=default |
| | Move constructor.
|
|
__cuda_callable__ | CSRBase (OffsetsView &&offsets) |
| | Binds a new CSR view to an offsets vector.
|
| template<typename Function> |
| void | forAllElements (Function function) const |
| | Call TNL::Algorithms::Segments::CSR::forElements for all elements of the segments.
|
|
template<typename Condition, typename Function> |
| void | forAllElementsIf (Condition condition, Function function) const |
| template<typename Function> |
| void | forAllSegments (Function &&function) const |
| | Call TNL::Algorithms::Segments::CSR::forSegments for all segments.
|
|
template<typename Array, typename Function> |
| void | forElements (const Array &segmentIndexes, Function function) const |
|
template<typename Array, typename Function> |
| void | forElements (const Array &segmentIndexes, Index begin, Index end, Function function) const |
| template<typename Function> |
| void | forElements (IndexType begin, IndexType end, Function function) const |
| | Iterate over all elements of given segments in parallel and call given lambda function.
|
|
template<typename Condition, typename Function> |
| void | forElementsIf (IndexType begin, IndexType end, Condition condition, Function function) const |
| template<typename Function> |
| void | forSegments (IndexType begin, IndexType end, Function &&function) const |
| | Iterate over all segments in parallel and call given lambda function.
|
|
__cuda_callable__ IndexType | getElementCount () const |
| | Returns the number of elements managed by all segments.
|
| __cuda_callable__ IndexType | getGlobalIndex (Index segmentIdx, Index localIdx) const |
| | Computes the global index of an element managed by the segments.
|
|
__cuda_callable__ OffsetsView | getOffsets () |
| | Returns a modifiable vector view with segment offsets used in the CSR format.
|
|
__cuda_callable__ ConstOffsetsView | getOffsets () const |
| | Returns a constant vector view with segment offsets used in the CSR format.
|
|
__cuda_callable__ IndexType | getSegmentCount () const |
| | Returns the number of segments.
|
|
__cuda_callable__ IndexType | getSegmentsCount () const |
| | Returns the number of segments. Deprecated, use getSegmentCount().
|
|
__cuda_callable__ IndexType | getSegmentSize (IndexType segmentIdx) const |
| | Returns the size of a particular segment denoted by segmentIdx.
|
| __cuda_callable__ SegmentViewType | getSegmentView (IndexType segmentIdx) const |
| | Returns a segment view (i.e., a segment accessor) for the specified segment index.
|
|
__cuda_callable__ IndexType | getSize () const |
| | Returns the number of elements managed by all segments.
|
|
__cuda_callable__ IndexType | getStorageSize () const |
| | Returns number of elements that needs to be allocated by a container connected to this segments.
|
|
CSRBase & | operator= (const CSRBase &)=delete |
| | Copy-assignment operator.
|
|
CSRBase & | operator= (CSRBase &&)=delete |
| | Move-assignment operator.
|
| template<typename Function> |
| void | sequentialForAllSegments (Function &&function) const |
| | Call TNL::Algorithms::Segments::CSR::sequentialForSegments for all segments.
|
| template<typename Function> |
| void | sequentialForSegments (IndexType begin, IndexType end, Function &&function) const |
| | Call TNL::Algorithms::Segments::CSR::forSegments sequentially for particular segments.
|
template<typename Device, typename Index>
class TNL::Algorithms::Segments::AdaptiveCSRView< Device, Index >
AdaptiveCSRView is provides a non-owning encapsulation of meta-data stored in the AdaptiveCSR segments.
See TNL::Algorithms::Segments::AdaptiveCSR for more details about AdaptiveCSR segments.
- Template Parameters
-
| Device | is type of device where the segments will be operating. |
| Index | is type for indexing of the elements managed by the segments. |