Concept of a distributed container.
More...
Concept of a distributed container.
- See also
- Array Concept
-
DashMapConcept
-
Matrix Concept
-
Multidimensional View Concept
-
Multidimensional Range Concept
-
Multidimensional Iterator Concept
- Description
A container in DASH is a set of elements of a the same type that is distributed to units in a team according to a specified distribution pattern. Container elements can be iterated canonically in global and local memory.
- Types
Type name | Description |
value_type | Type of the container elements. |
difference_type | Integer type denoting a distance in cartesian index space. |
index_type | Integer type denoting an offset/coordinate in cartesian index space. |
size_type | Integer type denoting an extent in cartesian index space. |
iterator | Iterator on container elements in global index space. |
const_iterator | Iterator on const container elements in global index space. |
reverse_iterator | Reverse iterator on container elements in global index space. |
const_reverse_iterator | Reverse iterator on const container elements in global index space. |
reference | Reference on container elements in global index space. |
const_reference | Reference on const container elements in global index space. |
local_pointer | Native pointer on local container elements. |
const_local_pointer | Native pointer on const local container elements. |
view_type | View specifier on container elements, model of DashViewConcept . |
local_type | Reference to local element range, allows range-based iteration. |
pattern_type | Concrete model of the Pattern concept that specifies the container's data distribution and cartesian access pattern. |
- Member Functions
Return Type | Method | Parameters | Description |
local_type | local | | Container proxy object representing a view specifier on the container's local elements. |
pattern_type | pattern | | Object implementing the Pattern concept specifying the container's data distribution and iteration pattern. |
iterator | begin | | Iterator referencing the first container element. |
iterator | end | | Iterator referencing the element past the last container element. |
Element * | lbegin | | Native pointer referencing the first local container element, same as local().begin() . |
Element * | lend | | Native pointer referencing the element past the last local container element, same as local().end() . |
size_type | size | | Number of elements in the container. |
size_type | local_size | | Number of local elements in the container, same as local().size() . |
bool | is_local | index_type gi | Whether the element at the given linear offset in global index space gi is local. |
bool | allocate | size_type n, DistributionSpec<DD> ds, Team t | Allocation of n container elements distributed in Team t as specified by distribution spec ds |
void | deallocate | | Deallocation of the container and its elements. |
- Non-member Functions
Return Type | Method | Parameters | Description |
C::size_type | dash::size | const C & container | Returns the size of a container |
bool | dash::empty | const C & container | Checks whether a container is empty |