|
|
__cuda_callable__ | EllpackView ()=default |
| | Default constructor with no parameters to create empty segments view.
|
|
__cuda_callable__ | EllpackView (const EllpackView &)=default |
| | Copy constructor.
|
|
__cuda_callable__ | EllpackView (EllpackView &&) noexcept=default |
| | Move constructor.
|
|
__cuda_callable__ | EllpackView (Index segmentsCount, Index segmentSize) |
| | Constructor that initializes segments based on their sizes.
|
|
__cuda_callable__ | EllpackView (Index segmentsCount, Index segmentSize, Index alignedSize) |
| | Constructor that initializes segments based on their sizes.
|
|
__cuda_callable__ void | bind (EllpackView 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.
|
|
EllpackView & | operator= (const EllpackView &)=delete |
| | Copy-assignment operator.
|
|
EllpackView & | operator= (EllpackView &&)=delete |
| | Move-assignment operator.
|
| void | save (File &file) const |
| | Method for saving the segments to a file in a binary form.
|
|
__cuda_callable__ | EllpackBase ()=default |
| | Default constructor with no parameters to create empty segments view.
|
|
void | forAllElements (Function &&function) const |
|
void | forAllElementsIf (Condition condition, Function function) const |
|
void | forAllSegments (Function &&function) const |
|
void | forElements (IndexType begin, IndexType end, Function &&function) const |
|
void | forElementsIf (IndexType begin, IndexType end, Condition condition, Function function) const |
|
void | forSegments (IndexType begin, IndexType end, Function &&function) const |
|
__cuda_callable__ IndexType | getAlignedSize () const |
| | Returns the aligned number of segments.
|
|
__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__ 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.
|
|
EllpackBase & | operator= (const EllpackBase &)=delete |
| | Copy-assignment operator.
|
template<typename Device, typename Index,
ElementsOrganization Organization = Segments::DefaultElementsOrganization< Device >::getOrganization(), int Alignment = 32>
class TNL::Algorithms::Segments::EllpackView< Device, Index, Organization, Alignment >
EllpackView is provides a non-owning encapsulation of meta-data stored in the TNL::Algorithms::Segments::Ellpack 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. |
| Organization | is the organization of the elements in the segments—either row-major or column-major order. |
| Alignment | is the alignment of the number of segments (to optimize data alignment, particularly on GPUs). |