DASH
0.3.0
|
Public Types | |
using | iterator_category = std::random_access_iterator_tag |
Iterator Traits. More... | |
using | value_type = ElementType |
using | difference_type = typename PatternType::index_type |
using | size_type = typename PatternType::size_type |
using | pointer = GlobAsyncRef< ElementType > |
using | reference = GlobRef< ElementType > |
typedef GlobRef< ElementType > ::const_type | const_reference |
typedef GlobAsyncRef< ElementType > ::const_type | const_pointer |
typedef pointer::local_type | local_type |
typedef pointer::const_local_type | const_local_type |
typedef PatternType | pattern_type |
typedef std::make_signed< typename PatternType::index_type >::type | index_type |
typedef std::integral_constant< bool, false > | has_view |
Public Member Functions | |
GlobAsyncIter () | |
Default constructor. More... | |
GlobAsyncIter (const self_t &other)=default | |
GlobAsyncIter< ElementType, PatternType > & | operator= (const self_t &other)=default |
void | wait () |
Wait for completion of non-blocking read- and write operations that have been executed on this global iterator since the last call of wait . More... | |
void | get () |
Wait for local completion of non-blocking read operations that have been executed on this global iterator since the last call of wait . More... | |
void | push () |
Block until all non-blocking write operations that have been executed on this global iterator since the last call of wait have been published. More... | |
DASH_CONSTEXPR | operator const_pointer () const noexcept |
<fuchsto> TODO: Conversion from iterator to pointer looks dubios More... | |
DASH_CONSTEXPR | operator pointer () DASH_NOEXCEPT |
<fuchsto> TODO: Conversion from iterator to pointer looks dubios More... | |
DASH_CONSTEXPR dart_gptr_t | dart_gptr () const DASH_NOEXCEPT |
Explicit conversion to dart_gptr_t . More... | |
DASH_CONSTEXPR reference | operator* () noexcept |
Dereference operator. More... | |
DASH_CONSTEXPR const_reference | operator* () const noexcept |
Dereference operator. More... | |
DASH_CONSTEXPR reference | operator[] (index_type g_index) noexcept |
Subscript operator, returns global reference to element at given global index. More... | |
DASH_CONSTEXPR const_reference | operator[] (index_type g_index) const noexcept |
Subscript operator, returns global reference to element at given global index. More... | |
DASH_CONSTEXPR bool | is_local () const noexcept |
Checks whether the element referenced by this global iterator is in the calling unit's local memory. More... | |
DASH_CONSTEXPR local_type | local () const |
Convert global iterator to native pointer. More... | |
DASH_CONSTEXPR auto | lpos () const |
Unit and local offset at the iterator's position. More... | |
DASH_CONSTEXPR const self_t & | global () const DASH_NOEXCEPT |
Map iterator to global index domain. More... | |
DASH_CONSTEXPR index_type | pos () const DASH_NOEXCEPT |
Position of the iterator in global index space. More... | |
DASH_CONSTEXPR index_type | gpos () const DASH_NOEXCEPT |
Position of the iterator in global index range. More... | |
DASH_CONSTEXPR const GlobAsyncPtr< ElementType, PatternType > & | globmem () const DASH_NOEXCEPT |
The instance of GlobStaticMem used by this iterator to resolve addresses in global memory. More... | |
GlobAsyncPtr< ElementType, PatternType > & | globmem () |
The instance of GlobStaticMem used by this iterator to resolve addresses in global memory. More... | |
DASH_CONSTEXPR self_t & | operator++ () DASH_NOEXCEPT |
Prefix increment operator. More... | |
DASH_CONSTEXPR self_t | operator++ (int) DASH_NOEXCEPT |
Postfix increment operator. More... | |
DASH_CONSTEXPR self_t & | operator-- () DASH_NOEXCEPT |
Prefix decrement operator. More... | |
DASH_CONSTEXPR self_t | operator-- (int) DASH_NOEXCEPT |
Postfix decrement operator. More... | |
DASH_CONSTEXPR self_t & | operator+= (index_type n) DASH_NOEXCEPT |
DASH_CONSTEXPR self_t & | operator-= (index_type n) DASH_NOEXCEPT |
DASH_CONSTEXPR self_t | operator+ (index_type n) const DASH_NOEXCEPT |
DASH_CONSTEXPR self_t | operator- (index_type n) const DASH_NOEXCEPT |
DASH_CONSTEXPR bool | operator< (const GlobIterT &other) const DASH_NOEXCEPT |
DASH_CONSTEXPR bool | operator<= (const GlobIterT &other) const DASH_NOEXCEPT |
DASH_CONSTEXPR bool | operator> (const GlobIterT &other) const DASH_NOEXCEPT |
DASH_CONSTEXPR bool | operator>= (const GlobIterT &other) const DASH_NOEXCEPT |
DASH_CONSTEXPR bool | operator== (const GlobIterT &other) const DASH_NOEXCEPT |
DASH_CONSTEXPR bool | operator!= (const GlobIterT &other) const DASH_NOEXCEPT |
DASH_CONSTEXPR const PatternType & | pattern () const DASH_NOEXCEPT |
DASH_CONSTEXPR dash::Team & | team () const DASH_NOEXCEPT |
Static Public Member Functions | |
static constexpr dim_t | ndim () |
The number of dimensions of the iterator's underlying pattern. More... | |
Definition at line 19 of file GlobAsyncIter.h.
|
inherited |
Iterator Traits.
Definition at line 48 of file GlobIter.h.
|
inline |
Default constructor.
Definition at line 36 of file GlobAsyncIter.h.
|
inlineinherited |
Explicit conversion to dart_gptr_t
.
Definition at line 193 of file GlobIter.h.
Referenced by dash::GlobAsyncIter< ElementType, PatternType >::get(), dash::GlobAsyncIter< ElementType, PatternType >::push(), and dash::GlobAsyncIter< ElementType, PatternType >::wait().
|
inline |
Wait for local completion of non-blocking read operations that have been executed on this global iterator since the last call of wait
.
Definition at line 60 of file GlobAsyncIter.h.
References dart_flush_all(), and dash::GlobIter< ElementType, PatternType, GlobAsyncPtr< ElementType, PatternType >, GlobAsyncRef< ElementType > >::dart_gptr().
|
inlineinherited |
Map iterator to global index domain.
Definition at line 328 of file GlobIter.h.
|
inlineinherited |
The instance of GlobStaticMem
used by this iterator to resolve addresses in global memory.
Definition at line 353 of file GlobIter.h.
|
inlineinherited |
The instance of GlobStaticMem
used by this iterator to resolve addresses in global memory.
Definition at line 362 of file GlobIter.h.
|
inlineinherited |
Position of the iterator in global index range.
Definition at line 344 of file GlobIter.h.
|
inlinenoexceptinherited |
Checks whether the element referenced by this global iterator is in the calling unit's local memory.
Definition at line 271 of file GlobIter.h.
|
inlineinherited |
Convert global iterator to native pointer.
Definition at line 279 of file GlobIter.h.
|
inlineinherited |
|
inlinestaticinherited |
The number of dimensions of the iterator's underlying pattern.
Definition at line 158 of file GlobIter.h.
|
inlineexplicitnoexceptinherited |
<fuchsto> TODO: Conversion from iterator to pointer looks dubios
Type conversion operator to GlobPtr
.
Definition at line 170 of file GlobIter.h.
|
inlineexplicitinherited |
<fuchsto> TODO: Conversion from iterator to pointer looks dubios
Type conversion operator to GlobPtr
.
Definition at line 182 of file GlobIter.h.
|
inlinenoexceptinherited |
Dereference operator.
Definition at line 226 of file GlobIter.h.
|
inlinenoexceptinherited |
Dereference operator.
Definition at line 236 of file GlobIter.h.
|
inlineinherited |
Prefix increment operator.
Definition at line 370 of file GlobIter.h.
|
inlineinherited |
Postfix increment operator.
Definition at line 379 of file GlobIter.h.
|
inlineinherited |
Prefix decrement operator.
Definition at line 389 of file GlobIter.h.
|
inlineinherited |
Postfix decrement operator.
Definition at line 398 of file GlobIter.h.
|
inlinenoexceptinherited |
Subscript operator, returns global reference to element at given global index.
g_index | The global position of the element |
Definition at line 245 of file GlobIter.h.
|
inlinenoexceptinherited |
Subscript operator, returns global reference to element at given global index.
g_index | The global position of the element |
Definition at line 258 of file GlobIter.h.
|
inlineinherited |
Position of the iterator in global index space.
Definition at line 336 of file GlobIter.h.
|
inline |
Block until all non-blocking write operations that have been executed on this global iterator since the last call of wait
have been published.
Does not guarantee remote completion.
Definition at line 71 of file GlobAsyncIter.h.
References dart_flush_local_all(), and dash::GlobIter< ElementType, PatternType, GlobAsyncPtr< ElementType, PatternType >, GlobAsyncRef< ElementType > >::dart_gptr().
|
inline |
Wait for completion of non-blocking read- and write operations that have been executed on this global iterator since the last call of wait
.
Definition at line 51 of file GlobAsyncIter.h.
References dart_flush_all(), and dash::GlobIter< ElementType, PatternType, GlobAsyncPtr< ElementType, PatternType >, GlobAsyncRef< ElementType > >::dart_gptr().