mpi_array.update.RmaUpdateExecutor

class mpi_array.update.RmaUpdateExecutor(inter_win, dst_lndarray, src_inter_win_rank_attr, rank_logger=None, casting='same_kind')[source]

Bases: object

Performs one-sided fetch of data from remote (source) locale arrays to update destination locale array.

Methods

__init__(inter_win, dst_lndarray, ...[, ...])
do_direct_cpy2_update(updates, src_lndarray) Does direct copy update to dst_lndarray from the specified src_lndarray array.
do_locale_rma_update(updates) Performs RMA to get elements from remote (source) locales to update the (destination) locale extent array.
get_src_win_rank(src_extent) Returns target rank integer (inter_win) for specified src_extent extent.

Attributes

dst_lndarray The destination numpy.ndarray for remote fetches.
inter_win The mpi4py.MPI.Win instance used for remote fetch of data.
random_state A numpy.random.RandomState instance, used to permute target rank ordering to alleviate swamping single rank with get requests from multiple source ranks.
rank_logger The logging.Logger used for log messages.