|
|
__cuda_callable__ | ChunkedEllpackBase ()=default |
| | Default constructor with no parameters to create empty segments view.
|
|
__cuda_callable__ | ChunkedEllpackBase (ChunkedEllpackBase &&) noexcept=default |
| | Move constructor.
|
|
__cuda_callable__ | ChunkedEllpackBase (const ChunkedEllpackBase &)=default |
| | Copy constructor.
|
|
__cuda_callable__ | ChunkedEllpackBase (IndexType size, IndexType storageSize, IndexType numberOfSlices, IndexType chunksInSlice, IndexType desiredChunkSize, OffsetsView segmentToChunkMapping, OffsetsView segmentToSliceMapping, OffsetsView chunksToSegmentsMapping, OffsetsView segmentPointers, SliceInfoContainerView slices) |
| | Constructor with all necessary data and views.
|
|
template<typename Function> |
| void | forAllElements (Function &&function) const |
|
template<typename Condition, typename Function> |
| void | forAllElementsIf (Condition condition, Function function) const |
|
template<typename Function> |
| void | forAllSegments (Function &&function) const |
|
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 |
|
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 |
|
__cuda_callable__ IndexType | getChunksInSlice () const |
| | Returns the number of chunks in a slice.
|
|
__cuda_callable__ OffsetsView | getChunksToSegmentsMappingView () |
| | Returns a modifiable vector view with mapping of chunks to segments.
|
|
__cuda_callable__ ConstOffsetsView | getChunksToSegmentsMappingView () const |
| | Returns a constant vector view with mapping of chunks to segments.
|
|
__cuda_callable__ IndexType | getDesiredChunkSize () const |
| | Returns the desired chunk size.
|
|
__cuda_callable__ IndexType | getElementCount () const |
| | Returns the number of elements managed by all segments.
|
| __cuda_callable__ IndexType | getGlobalIndex (IndexType segmentIdx, IndexType localIdx) const |
| | Computes the global index of an element managed by the segments.
|
|
__cuda_callable__ IndexType | getNumberOfSlices () const |
| | Returns the number of slices.
|
|
__cuda_callable__ IndexType | getSegmentCount () const |
| | Returns the number of segments.
|
|
__cuda_callable__ OffsetsView | getSegmentPointersView () |
| | Returns a modifiable vector view with segment pointers.
|
|
__cuda_callable__ ConstOffsetsView | getSegmentPointersView () const |
| | Returns a constant vector view with segment pointers.
|
|
__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__ OffsetsView | getSegmentToChunkMappingView () |
| | Returns a modifiable vector view with mapping of segments to chunks.
|
|
__cuda_callable__ ConstOffsetsView | getSegmentToChunkMappingView () const |
| | Returns a constant vector view with mapping of segments to chunks.
|
|
__cuda_callable__ OffsetsView | getSegmentToSliceMappingView () |
| | Returns a modifiable vector view with mapping of segments to slices.
|
|
__cuda_callable__ ConstOffsetsView | getSegmentToSliceMappingView () const |
| | Returns a constant vector view with mapping of segments to slices.
|
| __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__ SliceInfoContainerView | getSlicesView () |
| | Returns a modifiable view with slice information.
|
|
__cuda_callable__ ConstSliceInfoContainerView | getSlicesView () const |
| | Returns a constant view with slice information.
|
|
__cuda_callable__ IndexType | getStorageSize () const |
| | Returns number of elements that needs to be allocated by a container connected to this segments.
|
|
ChunkedEllpackBase & | operator= (ChunkedEllpackBase &&)=delete |
| | Move-assignment operator.
|
|
ChunkedEllpackBase & | operator= (const ChunkedEllpackBase &)=delete |
| | Copy-assignment operator.
|
|
void | printStructure (std::ostream &str) const |
| | Prints the structure of the segments to the output stream.
|
template<typename Device, typename Index,
ElementsOrganization Organization>
class TNL::Algorithms::Segments::ChunkedEllpackBase< Device, Index, Organization >
ChunkedEllpackBase serves as a base class for TNL::Algorithms::Segments::ChunkedEllpack and TNL::Algorithms::Segments::ChunkedEllpackView.
- 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. |
| Organization | is the organization of the elements in the segments—either row-major or column-major order. |