DASH
0.3.0
|
Defines how a list of global indices is mapped to single units within a Team. More...
#include <ShiftTilePattern.h>
Classes | |
struct | local_coords_t |
struct | local_index_t |
Public Types | |
typedef pattern_partitioning_properties< pattern_partitioning_tag::rectangular, pattern_partitioning_tag::balanced > | partitioning_properties |
Satisfiable properties in pattern property category Partitioning: More... | |
typedef pattern_mapping_properties< pattern_mapping_tag::balanced, pattern_mapping_tag::unbalanced, pattern_mapping_tag::diagonal > | mapping_properties |
Satisfiable properties in pattern property category Mapping: More... | |
typedef pattern_layout_properties< pattern_layout_tag::blocked, pattern_layout_tag::linear > | layout_properties |
Satisfiable properties in pattern property category Layout: More... | |
typedef IndexType | index_type |
typedef SizeType | size_type |
typedef ViewSpec_t | viewspec_type |
Public Member Functions | |
template<typename ... Args> | |
ShiftTilePattern (SizeType arg, Args &&... args) | |
Constructor, initializes a pattern from an argument list consisting of the pattern size (extent, number of elements) in every dimension followed by optional distribution types. More... | |
ShiftTilePattern (const SizeSpec_t &sizespec, DistributionSpec_t dist, TeamSpec_t teamspec, dash::Team &team=dash::Team::All()) | |
Constructor, initializes a pattern from explicit instances of SizeSpec , DistributionSpec , TeamSpec and a Team . More... | |
ShiftTilePattern (const SizeSpec_t &sizespec, DistributionSpec_t dist=DistributionSpec_t(), Team &team=dash::Team::All()) | |
Constructor, initializes a pattern from explicit instances of SizeSpec , DistributionSpec and a Team . More... | |
ShiftTilePattern (const self_t &other) | |
Copy constructor. More... | |
ShiftTilePattern (self_t &other) | |
Copy constructor using non-const lvalue reference parameter. More... | |
bool | operator== (const self_t &other) const |
Equality comparison operator. More... | |
bool | operator!= (const self_t &other) const |
Inquality comparison operator. More... | |
ShiftTilePattern & | operator= (const ShiftTilePattern &other) |
Assignment operator. More... | |
IndexType | lbegin () const |
Resolves the global index of the first local element in the pattern. More... | |
IndexType | lend () const |
Resolves the global index past the last local element in the pattern. More... | |
team_unit_t | unit_at (const std::array< IndexType, NumDimensions > &coords, const ViewSpec_t &viewspec) const |
unit_at More... | |
team_unit_t | unit_at (const std::array< IndexType, NumDimensions > &coords) const |
Convert given coordinate in pattern to its assigned unit id. More... | |
team_unit_t | unit_at (IndexType global_pos, const ViewSpec_t &viewspec) const |
Convert given global linear index to its assigned unit id. More... | |
team_unit_t | unit_at (IndexType global_pos) const |
Convert given global linear index to its assigned unit id. More... | |
SizeType | extent (dim_t dim) const |
extent More... | |
SizeType | local_extent (dim_t dim) const |
The actual number of elements in this pattern that are local to the calling unit in the given dimension. More... | |
std::array< SizeType, NumDimensions > | local_extents () const |
The actual number of elements in this pattern that are local to the given unit, by dimension. More... | |
IndexType | local_at (const std::array< IndexType, NumDimensions > &local_coords, const ViewSpec_t &viewspec) const |
local More... | |
IndexType | local_at (const std::array< IndexType, NumDimensions > &local_coords) const |
Convert given local coordinates to linear local offset (index). More... | |
local_coords_t | local (const std::array< IndexType, NumDimensions > &global_coords) const |
Converts global coordinates to their associated unit and its respective local coordinates. More... | |
local_index_t | local (IndexType g_index) const |
Converts global index to its associated unit and respective local index. More... | |
std::array< IndexType, NumDimensions > | local_coords (const std::array< IndexType, NumDimensions > &global_coords) const |
Converts global coordinates to their associated unit's respective local coordinates. More... | |
local_index_t | local_index (const std::array< IndexType, NumDimensions > &global_coords) const |
Resolves the unit and the local index from global coordinates. More... | |
std::array< IndexType, NumDimensions > | global (team_unit_t unit, const std::array< IndexType, NumDimensions > &local_coords) const |
global More... | |
std::array< IndexType, NumDimensions > | global (const std::array< IndexType, NumDimensions > &local_coords) const |
Converts local coordinates of a active unit to global coordinates. More... | |
IndexType | global (IndexType local_index) const |
Resolve an element's linear global index from the calling unit's local index of that element. More... | |
IndexType | global_index (team_unit_t unit, const std::array< IndexType, NumDimensions > &local_coords) const |
Resolve an element's linear global index from a given unit's local coordinates of that element. More... | |
IndexType | global_at (const std::array< IndexType, NumDimensions > &global_coords, const ViewSpec_t &viewspec) const |
Global coordinates and viewspec to global position in the pattern's iteration order. More... | |
IndexType | global_at (const std::array< IndexType, NumDimensions > &global_coords) const |
Global coordinates to global position in the pattern's iteration order. More... | |
IndexType | at (const std::array< IndexType, NumDimensions > &global_coords, const ViewSpec_t &viewspec) const |
at More... | |
IndexType | at (std::array< IndexType, NumDimensions > global_coords) const |
Global coordinates to local index. More... | |
template<typename ... Values> | |
IndexType | at (Values ... values) const |
Global coordinates to local index. More... | |
bool | has_local_elements (dim_t dim, IndexType dim_offset, team_unit_t unit, const ViewSpec_t &viewspec) const |
is_local More... | |
bool | is_local (IndexType index, team_unit_t unit) const |
Whether the given global index is local to the specified unit. More... | |
bool | is_local (IndexType index) const |
Whether the given global index is local to the unit that created this pattern instance. More... | |
index_type | block_at (const std::array< index_type, NumDimensions > &g_coords) const |
block More... | |
local_index_t | local_block_at (const std::array< index_type, NumDimensions > &g_coords) const |
Unit and local block index at given global coordinates. More... | |
ViewSpec_t | block (index_type global_block_index) const |
View spec (offset and extents) of block at global linear block index in global cartesian element space. More... | |
ViewSpec_t | local_block (index_type local_block_index) const |
View spec (offset and extents) of block at local linear block index in global cartesian element space. More... | |
ViewSpec_t | local_block_local (index_type local_block_index) const |
View spec (offset and extents) of block at local linear block index in local cartesian element space. More... | |
const BlockSpec_t & | blockspec () const |
Cartesian arrangement of pattern blocks. More... | |
const BlockSpec_t & | local_blockspec () const |
Cartesian arrangement of pattern blocks. More... | |
SizeType | blocksize (dim_t dimension) const |
Maximum number of elements in a single block in the given dimension. More... | |
SizeType | max_blocksize () const |
Maximum number of elements in a single block in all dimensions. More... | |
SizeType | local_capacity () const |
Maximum number of elements assigned to a single unit in total, equivalent to the local capacity of every unit in this pattern. More... | |
SizeType | local_size (team_unit_t unit=UNDEFINED_TEAM_UNIT_ID) const |
The actual number of elements in this pattern that are local to the calling unit in total. More... | |
IndexType | num_units () const |
The number of units to which this pattern's elements are mapped. More... | |
IndexType | capacity () const |
The maximum number of elements arranged in this pattern. More... | |
IndexType | size () const |
The number of elements arranged in this pattern. More... | |
dash::Team & | team () const |
The Team containing the units to which this pattern's elements are mapped. More... | |
const DistributionSpec_t & | distspec () const |
Distribution specification of this pattern. More... | |
SizeSpec_t | sizespec () const |
Size specification of the index space mapped by this pattern. More... | |
const std::array< SizeType, NumDimensions > & | extents () const |
Size specification of the index space mapped by this pattern. More... | |
const TeamSpec_t & | teamspec () const |
Cartesian arrangement of the Team containing the units to which this pattern's elements are mapped. More... | |
std::array< IndexType, NumDimensions > | coords (IndexType index) const |
Convert given global linear offset (index) to global cartesian coordinates. More... | |
std::array< IndexType, NumDimensions > | coords (IndexType index, const ViewSpec_t &viewspec) const |
Convert given global linear offset (index) to global cartesian coordinates using viewspec. More... | |
Static Public Member Functions | |
static constexpr MemArrange | memory_order () |
Memory order followed by the pattern. More... | |
static constexpr dim_t | ndim () |
Number of dimensions of the cartesian space partitioned by the pattern. More... | |
Static Public Attributes | |
static constexpr char const * | PatternName = "ShiftTilePattern" |
Defines how a list of global indices is mapped to single units within a Team.
Expects extent
[d] to be a multiple of (blocksize[d] * nunits[d]) to ensure the balanced property.
NumDimensions | The number of dimensions of the pattern |
Arrangement | The memory order of the pattern (ROW_MAJOR or COL_MAJOR), defaults to ROW_MAJOR. Memory order defines how elements in the pattern will be iterated predominantly |
Definition at line 46 of file ShiftTilePattern.h.
typedef pattern_layout_properties< pattern_layout_tag::blocked, pattern_layout_tag::linear > dash::ShiftTilePattern< NumDimensions, Arrangement, IndexType >::layout_properties |
Satisfiable properties in pattern property category Layout:
Definition at line 75 of file ShiftTilePattern.h.
typedef pattern_mapping_properties< pattern_mapping_tag::balanced, pattern_mapping_tag::unbalanced, pattern_mapping_tag::diagonal > dash::ShiftTilePattern< NumDimensions, Arrangement, IndexType >::mapping_properties |
Satisfiable properties in pattern property category Mapping:
Definition at line 67 of file ShiftTilePattern.h.
typedef pattern_partitioning_properties< pattern_partitioning_tag::rectangular, pattern_partitioning_tag::balanced > dash::ShiftTilePattern< NumDimensions, Arrangement, IndexType >::partitioning_properties |
Satisfiable properties in pattern property category Partitioning:
Definition at line 58 of file ShiftTilePattern.h.
|
inline |
Constructor, initializes a pattern from an argument list consisting of the pattern size (extent, number of elements) in every dimension followed by optional distribution types.
Examples:
arg | Argument list consisting of the pattern size (extent, number of elements) in every dimension followed by optional distribution types. |
args | Argument list consisting of the pattern size (extent, number of elements) in every dimension followed by optional distribution types. |
Definition at line 189 of file ShiftTilePattern.h.
Referenced by dash::ShiftTilePattern< NumDimensions, Arrangement, IndexType >::ndim().
|
inline |
Constructor, initializes a pattern from explicit instances of SizeSpec
, DistributionSpec
, TeamSpec
and a Team
.
Examples:
sizespec | ShiftTilePattern size (extent, number of elements) in every dimension |
dist | Distribution type (BLOCKED, CYCLIC, BLOCKCYCLIC, TILE or NONE) of all dimensions. |
teamspec | Cartesian arrangement of units within the team |
team | Team containing units to which this pattern maps its elements |
Definition at line 236 of file ShiftTilePattern.h.
|
inline |
Constructor, initializes a pattern from explicit instances of SizeSpec
, DistributionSpec
and a Team
.
Examples:
sizespec | ShiftTilePattern size (extent, number of elements) in every dimension |
dist | Distribution type (BLOCKED, CYCLIC, BLOCKCYCLIC, TILE or NONE) of all dimensions. Defaults to BLOCKED in first, and NONE in higher dimensions |
team | Team containing units to which this pattern maps its elements |
Definition at line 306 of file ShiftTilePattern.h.
|
inline |
|
inline |
Copy constructor using non-const lvalue reference parameter.
Introduced so variadic constructor is not a better match for copy-construction.
Definition at line 361 of file ShiftTilePattern.h.
|
inline |
at
Global coordinates and viewspec to local index.
NOTE: Expects extent[d] to be a multiple of blocksize[d] * nunits[d] to ensure the balanced property.
Definition at line 954 of file ShiftTilePattern.h.
References dash::CartesianIndexSpace< NumDimensions, Arrangement, IndexType >::at(), dash::CartesianIndexSpace< NumDimensions, Arrangement, IndexType >::extent(), dash::CartesianIndexSpace< NumDimensions, Arrangement, IndexType >::extents(), and dash::CartesianIndexSpace< NumDimensions, Arrangement, IndexType >::size().
Referenced by dash::ShiftTilePattern< NumDimensions, Arrangement, IndexType >::at().
|
inline |
Global coordinates to local index.
Convert given global coordinates in pattern to their respective linear local index.
Definition at line 996 of file ShiftTilePattern.h.
References dash::CartesianIndexSpace< NumDimensions, Arrangement, IndexType >::at(), dash::CartesianIndexSpace< NumDimensions, Arrangement, IndexType >::extent(), dash::CartesianIndexSpace< NumDimensions, Arrangement, IndexType >::extents(), and dash::CartesianIndexSpace< NumDimensions, Arrangement, IndexType >::size().
|
inline |
Global coordinates to local index.
Convert given coordinate in pattern to its linear local index.
Definition at line 1034 of file ShiftTilePattern.h.
References dash::ShiftTilePattern< NumDimensions, Arrangement, IndexType >::at().
|
inline |
View spec (offset and extents) of block at global linear block index in global cartesian element space.
Definition at line 1156 of file ShiftTilePattern.h.
References dash::CartesianIndexSpace< NumDimensions, Arrangement, IndexType >::coords(), dash::CartesianIndexSpace< NumDimensions, Arrangement, IndexType >::extent(), dash::CartesianIndexSpace< NumDimensions, Arrangement, IndexType >::extents(), and dash::ShiftTilePattern< NumDimensions, Arrangement, IndexType >::extents().
|
inline |
block
Index of block at given global coordinates.
g_coords | Global coordinates of element |
Definition at line 1121 of file ShiftTilePattern.h.
References dash::CartesianIndexSpace< NumDimensions, Arrangement, IndexType >::at(), and dash::CartesianIndexSpace< NumDimensions, Arrangement, IndexType >::extent().
|
inline |
Maximum number of elements in a single block in the given dimension.
dimension | The dimension in the pattern |
Definition at line 1272 of file ShiftTilePattern.h.
References dash::CartesianIndexSpace< NumDimensions, Arrangement, IndexType >::extent().
|
inline |
Cartesian arrangement of pattern blocks.
Definition at line 1252 of file ShiftTilePattern.h.
Referenced by dash::ShiftTilePattern< NumDimensions, Arrangement, IndexType >::ndim().
|
inline |
The maximum number of elements arranged in this pattern.
Definition at line 1332 of file ShiftTilePattern.h.
References dash::CartesianIndexSpace< NumDimensions, Arrangement, IndexType >::size().
|
inline |
Convert given global linear offset (index) to global cartesian coordinates.
index | Global index (offset) to convert |
Definition at line 1394 of file ShiftTilePattern.h.
References dash::CartesianIndexSpace< NumDimensions, Arrangement, IndexType >::coords(), dash::CartesianIndexSpace< NumDimensions, Arrangement, IndexType >::extent(), and dash::CartesianIndexSpace< NumDimensions, Arrangement, IndexType >::size().
Referenced by dash::ShiftTilePattern< NumDimensions, Arrangement, IndexType >::local().
|
inline |
Convert given global linear offset (index) to global cartesian coordinates using viewspec.
index | Global index (offset) to convert |
viewspec | View specification (offsets) to apply on coords |
Definition at line 1413 of file ShiftTilePattern.h.
References dash::CartesianIndexSpace< NumDimensions, Arrangement, IndexType >::coords(), dash::CartesianIndexSpace< NumDimensions, Arrangement, IndexType >::extent(), and dash::CartesianIndexSpace< NumDimensions, Arrangement, IndexType >::size().
|
inline |
Distribution specification of this pattern.
Definition at line 1356 of file ShiftTilePattern.h.
Referenced by dash::ShiftTilePattern< NumDimensions, Arrangement, IndexType >::ndim().
|
inline |
extent
The number of elements in this pattern in the given dimension.
Definition at line 535 of file ShiftTilePattern.h.
References dash::CartesianIndexSpace< NumDimensions, Arrangement, IndexType >::extent().
|
inline |
Size specification of the index space mapped by this pattern.
Definition at line 1374 of file ShiftTilePattern.h.
References dash::CartesianIndexSpace< NumDimensions, Arrangement, IndexType >::extents().
Referenced by dash::ShiftTilePattern< NumDimensions, Arrangement, IndexType >::block(), dash::ShiftTilePattern< NumDimensions, Arrangement, IndexType >::local_block(), and dash::ShiftTilePattern< NumDimensions, Arrangement, IndexType >::local_block_local().
|
inline |
global
Converts local coordinates of a given unit to global coordinates.
Definition at line 747 of file ShiftTilePattern.h.
Referenced by dash::ShiftTilePattern< NumDimensions, Arrangement, IndexType >::global(), dash::ShiftTilePattern< NumDimensions, Arrangement, IndexType >::local_block(), and dash::ShiftTilePattern< NumDimensions, Arrangement, IndexType >::ndim().
|
inline |
Converts local coordinates of a active unit to global coordinates.
Definition at line 789 of file ShiftTilePattern.h.
References dash::ShiftTilePattern< NumDimensions, Arrangement, IndexType >::global(), and dash::ShiftTilePattern< NumDimensions, Arrangement, IndexType >::local_coords().
|
inline |
Resolve an element's linear global index from the calling unit's local index of that element.
Definition at line 803 of file ShiftTilePattern.h.
References dash::CartesianIndexSpace< NumDimensions, Arrangement, IndexType >::coords(), dash::CartesianIndexSpace< NumDimensions, Arrangement, IndexType >::extent(), dash::ShiftTilePattern< NumDimensions, Arrangement, IndexType >::global(), dash::ShiftTilePattern< NumDimensions, Arrangement, IndexType >::global_at(), dash::myid(), dash::CartesianIndexSpace< NumDimensions, Arrangement, IndexType >::size(), and dash::ShiftTilePattern< NumDimensions, Arrangement, IndexType >::team().
|
inline |
Global coordinates and viewspec to global position in the pattern's iteration order.
NOTE: Expects extent[d] to be a multiple of blocksize[d] * nunits[d] to ensure the balanced property.
Definition at line 869 of file ShiftTilePattern.h.
References dash::CartesianIndexSpace< NumDimensions, Arrangement, IndexType >::at(), dash::CartesianIndexSpace< NumDimensions, Arrangement, IndexType >::extent(), and dash::CartesianIndexSpace< NumDimensions, Arrangement, IndexType >::size().
Referenced by dash::ShiftTilePattern< NumDimensions, Arrangement, IndexType >::global().
|
inline |
Global coordinates to global position in the pattern's iteration order.
NOTE: Expects extent[d] to be a multiple of blocksize[d] * nunits[d] to ensure the balanced property.
Definition at line 911 of file ShiftTilePattern.h.
References dash::CartesianIndexSpace< NumDimensions, Arrangement, IndexType >::at(), dash::CartesianIndexSpace< NumDimensions, Arrangement, IndexType >::extent(), and dash::CartesianIndexSpace< NumDimensions, Arrangement, IndexType >::size().
|
inline |
Resolve an element's linear global index from a given unit's local coordinates of that element.
Definition at line 842 of file ShiftTilePattern.h.
|
inline |
is_local
Whether there are local elements in a dimension at a given offset, e.g. in a specific row or column.
dim | Dimension to check |
dim_offset | Offset in dimension |
unit | team-local id of the unit |
viewspec | Viewspec to apply |
Definition at line 1055 of file ShiftTilePattern.h.
|
inline |
Whether the given global index is local to the specified unit.
Definition at line 1090 of file ShiftTilePattern.h.
Referenced by dash::ShiftTilePattern< NumDimensions, Arrangement, IndexType >::is_local().
|
inline |
Whether the given global index is local to the unit that created this pattern instance.
Definition at line 1106 of file ShiftTilePattern.h.
References dash::ShiftTilePattern< NumDimensions, Arrangement, IndexType >::is_local(), dash::myid(), and dash::ShiftTilePattern< NumDimensions, Arrangement, IndexType >::team().
|
inline |
Resolves the global index of the first local element in the pattern.
Definition at line 425 of file ShiftTilePattern.h.
|
inline |
Resolves the global index past the last local element in the pattern.
Definition at line 434 of file ShiftTilePattern.h.
|
inline |
Converts global coordinates to their associated unit and its respective local coordinates.
TODO: Unoptimized
Definition at line 667 of file ShiftTilePattern.h.
References dash::ShiftTilePattern< NumDimensions, Arrangement, IndexType >::local_coords(), and dash::ShiftTilePattern< NumDimensions, Arrangement, IndexType >::unit_at().
|
inline |
Converts global index to its associated unit and respective local index.
TODO: Unoptimized
Definition at line 683 of file ShiftTilePattern.h.
References dash::ShiftTilePattern< NumDimensions, Arrangement, IndexType >::coords(), and dash::ShiftTilePattern< NumDimensions, Arrangement, IndexType >::local_index().
|
inline |
local
Convert given local coordinates and viewspec to linear local offset (index).
local_coords | Point in local memory |
viewspec | View specification (local offsets) to apply on local_coords |
Definition at line 594 of file ShiftTilePattern.h.
References dash::CartesianIndexSpace< NumDimensions, Arrangement, IndexType >::at(), dash::CartesianIndexSpace< NumDimensions, Arrangement, IndexType >::extent(), dash::CartesianIndexSpace< NumDimensions, Arrangement, IndexType >::extents(), dash::ShiftTilePattern< NumDimensions, Arrangement, IndexType >::local_index(), and dash::CartesianIndexSpace< NumDimensions, Arrangement, IndexType >::size().
|
inline |
Convert given local coordinates to linear local offset (index).
local_coords | Point in local memory |
Definition at line 631 of file ShiftTilePattern.h.
References dash::CartesianIndexSpace< NumDimensions, Arrangement, IndexType >::at(), dash::CartesianIndexSpace< NumDimensions, Arrangement, IndexType >::extent(), dash::CartesianIndexSpace< NumDimensions, Arrangement, IndexType >::extents(), dash::ShiftTilePattern< NumDimensions, Arrangement, IndexType >::local_index(), and dash::CartesianIndexSpace< NumDimensions, Arrangement, IndexType >::size().
|
inline |
View spec (offset and extents) of block at local linear block index in global cartesian element space.
Definition at line 1182 of file ShiftTilePattern.h.
References dash::CartesianIndexSpace< NumDimensions, Arrangement, IndexType >::coords(), dash::CartesianIndexSpace< NumDimensions, Arrangement, IndexType >::extent(), dash::ShiftTilePattern< NumDimensions, Arrangement, IndexType >::extents(), and dash::ShiftTilePattern< NumDimensions, Arrangement, IndexType >::global().
|
inline |
Unit and local block index at given global coordinates.
g_coords | Global coordinates of element |
Definition at line 1143 of file ShiftTilePattern.h.
|
inline |
View spec (offset and extents) of block at local linear block index in local cartesian element space.
Definition at line 1230 of file ShiftTilePattern.h.
References dash::CartesianIndexSpace< NumDimensions, Arrangement, IndexType >::coords(), dash::CartesianIndexSpace< NumDimensions, Arrangement, IndexType >::extents(), and dash::ShiftTilePattern< NumDimensions, Arrangement, IndexType >::extents().
|
inline |
Cartesian arrangement of pattern blocks.
Definition at line 1260 of file ShiftTilePattern.h.
|
inline |
Maximum number of elements assigned to a single unit in total, equivalent to the local capacity of every unit in this pattern.
Definition at line 1296 of file ShiftTilePattern.h.
References dash::ShiftTilePattern< NumDimensions, Arrangement, IndexType >::local_size().
|
inline |
Converts global coordinates to their associated unit's respective local coordinates.
Definition at line 699 of file ShiftTilePattern.h.
References dash::CartesianIndexSpace< NumDimensions, Arrangement, IndexType >::extent().
Referenced by dash::ShiftTilePattern< NumDimensions, Arrangement, IndexType >::global(), and dash::ShiftTilePattern< NumDimensions, Arrangement, IndexType >::local().
|
inline |
The actual number of elements in this pattern that are local to the calling unit in the given dimension.
Definition at line 557 of file ShiftTilePattern.h.
References dash::CartesianIndexSpace< NumDimensions, Arrangement, IndexType >::extent().
|
inline |
The actual number of elements in this pattern that are local to the given unit, by dimension.
Definition at line 579 of file ShiftTilePattern.h.
References dash::CartesianIndexSpace< NumDimensions, Arrangement, IndexType >::extents().
|
inline |
Resolves the unit and the local index from global coordinates.
Definition at line 718 of file ShiftTilePattern.h.
Referenced by dash::ShiftTilePattern< NumDimensions, Arrangement, IndexType >::local(), and dash::ShiftTilePattern< NumDimensions, Arrangement, IndexType >::local_at().
|
inline |
The actual number of elements in this pattern that are local to the calling unit in total.
Definition at line 1312 of file ShiftTilePattern.h.
Referenced by dash::ShiftTilePattern< NumDimensions, Arrangement, IndexType >::local_capacity(), and dash::ShiftTilePattern< NumDimensions, Arrangement, IndexType >::ndim().
|
inline |
Maximum number of elements in a single block in all dimensions.
Definition at line 1286 of file ShiftTilePattern.h.
References dash::CartesianIndexSpace< NumDimensions, Arrangement, IndexType >::size().
|
inlinestatic |
Memory order followed by the pattern.
Definition at line 1433 of file ShiftTilePattern.h.
|
inlinestatic |
Number of dimensions of the cartesian space partitioned by the pattern.
Definition at line 1440 of file ShiftTilePattern.h.
References dash::ShiftTilePattern< NumDimensions, Arrangement, IndexType >::blockspec(), dash::ShiftTilePattern< NumDimensions, Arrangement, IndexType >::distspec(), dash::CartesianSpace< NumDimensions, SizeType >::extent(), dash::CartesianIndexSpace< NumDimensions, Arrangement, IndexType >::extent(), dash::CartesianSpace< NumDimensions, SizeType >::extents(), dash::CartesianIndexSpace< NumDimensions, Arrangement, IndexType >::extents(), dash::ShiftTilePattern< NumDimensions, Arrangement, IndexType >::global(), dash::ShiftTilePattern< NumDimensions, Arrangement, IndexType >::local_size(), dash::Distribution::max_blocksize_in_range(), dash::ShiftTilePattern< NumDimensions, Arrangement, IndexType >::ShiftTilePattern(), dash::CartesianIndexSpace< NumDimensions, Arrangement, IndexType >::size(), and dash::ShiftTilePattern< NumDimensions, Arrangement, IndexType >::size().
|
inline |
The number of units to which this pattern's elements are mapped.
Definition at line 1323 of file ShiftTilePattern.h.
References dash::CartesianIndexSpace< NumDimensions, Arrangement, IndexType >::size().
|
inline |
Inquality comparison operator.
other | ShiftTilePattern instance to compare for inequality |
Definition at line 390 of file ShiftTilePattern.h.
|
inline |
|
inline |
Equality comparison operator.
other | ShiftTilePattern instance to compare for equality |
Definition at line 368 of file ShiftTilePattern.h.
|
inline |
The number of elements arranged in this pattern.
Definition at line 1341 of file ShiftTilePattern.h.
References dash::CartesianIndexSpace< NumDimensions, Arrangement, IndexType >::size().
Referenced by dash::ShiftTilePattern< NumDimensions, Arrangement, IndexType >::ndim().
|
inline |
Size specification of the index space mapped by this pattern.
Definition at line 1365 of file ShiftTilePattern.h.
References dash::CartesianIndexSpace< NumDimensions, Arrangement, IndexType >::extents().
|
inline |
The Team containing the units to which this pattern's elements are mapped.
Definition at line 1349 of file ShiftTilePattern.h.
Referenced by dash::ShiftTilePattern< NumDimensions, Arrangement, IndexType >::global(), and dash::ShiftTilePattern< NumDimensions, Arrangement, IndexType >::is_local().
|
inline |
Cartesian arrangement of the Team containing the units to which this pattern's elements are mapped.
Definition at line 1384 of file ShiftTilePattern.h.
|
inline |
unit_at
Convert given point in pattern to its assigned unit id.
coords | Absolute coordinates of the point relative to the given view. |
viewspec | View specification (offsets) of the coordinates. |
Definition at line 447 of file ShiftTilePattern.h.
References dash::CartesianIndexSpace< NumDimensions, Arrangement, IndexType >::extent().
Referenced by dash::ShiftTilePattern< NumDimensions, Arrangement, IndexType >::local(), and dash::ShiftTilePattern< NumDimensions, Arrangement, IndexType >::unit_at().
|
inline |
Convert given coordinate in pattern to its assigned unit id.
Definition at line 475 of file ShiftTilePattern.h.
References dash::CartesianIndexSpace< NumDimensions, Arrangement, IndexType >::extent(), and dash::CartesianIndexSpace< NumDimensions, Arrangement, IndexType >::extents().
|
inline |
Convert given global linear index to its assigned unit id.
global_pos | Global linear element offset |
viewspec | View to apply global position |
Definition at line 499 of file ShiftTilePattern.h.
References dash::CartesianIndexSpace< NumDimensions, Arrangement, IndexType >::coords(), and dash::ShiftTilePattern< NumDimensions, Arrangement, IndexType >::unit_at().
|
inline |
Convert given global linear index to its assigned unit id.
global_pos | Global linear element offset |
Definition at line 514 of file ShiftTilePattern.h.
References dash::CartesianIndexSpace< NumDimensions, Arrangement, IndexType >::coords(), and dash::ShiftTilePattern< NumDimensions, Arrangement, IndexType >::unit_at().