exchange map declarations
More...
Go to the source code of this file.
◆ Xt_xmap_iter
◆ xt_reorder_type
Enumerator |
---|
XT_REORDER_NONE | no reordering
|
XT_REORDER_SEND_UP | optimise data access on sender side
|
XT_REORDER_RECV_UP | optimise data access on receiver side
|
Definition at line 239 of file xt_xmap.h.
◆ xt_xmap_copy()
◆ xt_xmap_delete()
void xt_xmap_delete |
( |
Xt_xmap |
xmap | ) |
|
destructor for an exchange map
- Parameters
-
[in] | xmap | exchange map to be destroyed |
- Examples
- rrobin.c, test_redist_collection.c, test_redist_collection_parallel.c, test_redist_collection_static.c, test_redist_collection_static_parallel.c, test_redist_p2p.c, test_redist_p2p_parallel.c, test_redist_repeat.c, test_redist_repeat_parallel.c, test_xmap_all2all_fail.c, test_xmap_common.c, test_xmap_common_parallel.c, and test_xmap_intersection_parallel.c.
Definition at line 85 of file xt_xmap.c.
◆ xt_xmap_get_communicator()
gets the MPI communicator of the exchange map
- Parameters
-
- Returns
- MPI communicator of the exchange map
Definition at line 55 of file xt_xmap.c.
◆ xt_xmap_get_destination_ranks()
void xt_xmap_get_destination_ranks |
( |
Xt_xmap |
xmap, |
|
|
int * |
ranks |
|
) |
| |
gets the ranks of processes that will require data from the local process in an exchange operation
- Parameters
-
[in] | xmap | exchange map |
[out] | ranks | ranks of processes that will require data from the local process in an exchange operation |
- Examples
- test_xmap_common.c, and test_xmap_common_parallel.c.
Definition at line 70 of file xt_xmap.c.
◆ xt_xmap_get_in_iterator()
gets an iterator for all local incoming messages of an exchange operation
- Parameters
-
- Returns
- iterator for all local incoming messages
is NULL if there are no local incoming messages
- Examples
- test_xmap_intersection_parallel.c.
Definition at line 90 of file xt_xmap.c.
◆ xt_xmap_get_max_dst_pos()
int xt_xmap_get_max_dst_pos |
( |
Xt_xmap |
xmap | ) |
|
gives an upper limit to the range of positions in the dst part of the transfer_pos,
- Parameters
-
- Returns
- upper limit of range of positions in the destination list
- Examples
- test_xmap_common_parallel.c.
Definition at line 138 of file xt_xmap.c.
◆ xt_xmap_get_max_src_pos()
int xt_xmap_get_max_src_pos |
( |
Xt_xmap |
xmap | ) |
|
gives an upper limit to the range of positions in the src part of the transfer_pos,
- Parameters
-
- Returns
- upper limit of range of positions in the source list
- Examples
- test_xmap_common_parallel.c.
Definition at line 134 of file xt_xmap.c.
◆ xt_xmap_get_num_destinations()
int xt_xmap_get_num_destinations |
( |
Xt_xmap |
xmap | ) |
|
◆ xt_xmap_get_num_sources()
int xt_xmap_get_num_sources |
( |
Xt_xmap |
xmap | ) |
|
◆ xt_xmap_get_out_iterator()
gets an iterator for all local outgoing messages of an exchange operation
- Parameters
-
- Returns
- iterator for all local outgoing messages
is NULL if there are no local outgoing messages
- Examples
- test_xmap_intersection_parallel.c.
Definition at line 95 of file xt_xmap.c.
◆ xt_xmap_get_source_ranks()
void xt_xmap_get_source_ranks |
( |
Xt_xmap |
xmap, |
|
|
int * |
ranks |
|
) |
| |
gets the ranks of processes from which the local process will require data in an exchange operation
- Parameters
-
[in] | xmap | exchange map |
[out] | ranks | ranks of processes from which the local process will required data in an exchange operation |
- Examples
- test_xmap_common.c, and test_xmap_common_parallel.c.
Definition at line 75 of file xt_xmap.c.
◆ xt_xmap_iterator_delete()
◆ xt_xmap_iterator_get_num_transfer_pos()
int xt_xmap_iterator_get_num_transfer_pos |
( |
Xt_xmap_iter |
iter | ) |
|
◆ xt_xmap_iterator_get_num_transfer_pos_ext()
int xt_xmap_iterator_get_num_transfer_pos_ext |
( |
Xt_xmap_iter |
iter | ) |
|
◆ xt_xmap_iterator_get_rank()
◆ xt_xmap_iterator_get_transfer_pos()
int const* xt_xmap_iterator_get_transfer_pos |
( |
Xt_xmap_iter |
iter | ) |
|
get the positions of all element of the current item of an exchange map iterator
- Parameters
-
[in] | iter | exchange map iterator |
- Returns
- exchange list of the current item
- Examples
- test_xmap_intersection_parallel.c.
Definition at line 110 of file xt_xmap.c.
◆ xt_xmap_iterator_get_transfer_pos_ext()
get the position ranges of all element of the current item of an exchange map iterator as position extents
- Parameters
-
[in] | iter | exchange map iterator |
- Returns
- exchange list of the current item
Definition at line 121 of file xt_xmap.c.
◆ xt_xmap_iterator_next()
◆ xt_xmap_reorder()
◆ xt_xmap_spread()
Xt_xmap xt_xmap_spread |
( |
Xt_xmap |
xmap, |
|
|
int |
num_repetitions, |
|
|
const int |
src_displacements[num_repetitions], |
|
|
const int |
dst_displacements[num_repetitions] |
|
) |
| |
inflate the pattern stored in the exchange map by repeating it at provided offsets
- Parameters
-
[in] | xmap | exchange map |
[in] | num_repetitions | number of repetitions of the given data map |
[in] | src_displacements | displacements for source repetitions |
[in] | dst_displacements | displacements for destination repetitions |
- Returns
- copy of input xmap, which is spread into multiple repetitions with given displacements
- Examples
- test_xmap_common_parallel.c, and test_xmap_intersection_parallel.c.
Definition at line 151 of file xt_xmap.c.
◆ xt_xmap_update_positions()
Xt_xmap xt_xmap_update_positions |
( |
Xt_xmap |
xmap, |
|
|
const int * |
src_positions, |
|
|
const int * |
dst_positions |
|
) |
| |