mpi_array.comms.RmaWindowBuffer¶
-
class
mpi_array.comms.
RmaWindowBuffer
(is_shared, shape, dtype, itemsize, intra_locale_win, peer_comm=None, inter_locale_comm=None, peer_win=None, inter_locale_win=None, root_logger=None, rank_logger=None)[source]¶ Bases:
object
Details of the buffer allocated on a locale.
Methods
__init__
(is_shared, shape, dtype, itemsize, ...)create_inter_locale_win
()Creates a mpi4py.MPI.Win
window (over theinter_locale_comm
communicator) exposing thebuffer
memory.create_peer_win
()Creates a mpi4py.MPI.Win
window (over thepeer_win
communicator) exposing thebuffer
memory.free
()Free MPI windows and associated buffer memory. initialise_windows
()Creates both of the peer_win
andinter_locale_win
mpi4py.MPI.Win
objects.Attributes
buffer
A numpy.ndarray
with memory allocated using one ofmpi4py.MPI.Win.Allocate()
ormpi4py.MPI.Win.Allocate_shared()
as the buffer.dtype
A numpy.dtype
indicating the data type of elements stored in the array.inter_locale_comm
The inter-locale mpi4py.MPI.Win
MPI communicator.inter_locale_win
The mpi4py.MPI.Win
created from theinter_locale_comm
communicator which exposesbuffer
for inter-locale RMA access.inter_locale_win_initialised
Returns True
if inter-locale RMA window (inter_locale_win
) has been created.intra_locale_win
The mpi4py.MPI.Win
created from theintra_locale_comm
communicator which exposesbuffer
for intra-locale RMA access.intra_locale_win_memory
The memory allocated using one of mpi4py.MPI.Win.Allocate()
ormpi4py.MPI.Win.Allocate_shared()
.is_shared
A bool
, ifTrue
then buffer memory was allocated usingmpi4py.MPI.Win.Allocate_shared()
, otherwise memory was allocated usingmpi4py.MPI.Win.Allocate()
.itemsize
An int
indicating the number of bytes per array element (same asnumpy.dtype.itemsize
).peer_comm
The peer mpi4py.MPI.Comm
MPI communicator.peer_win
The mpi4py.MPI.Win
created from thepeer_comm
communicator which exposesbuffer
for inter-locale RMA access.peer_win_initialised
Returns True
if peer RMA window (peer_win
) has been created.rank_logger
A logging.Logger
for logging messages from all rank MPI processes ofpeer_comm
.root_logger
A logging.Logger
for logging messages from the root MPI process ofpeer_comm
.shape
A sequence of int
indicating the shape of the locale array.windows_initialised
Returns True
if both peer RMA window (peer_win
) and inter-locale RMA window (inter_locale_win
) have been created.