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:
objectDetails of the buffer allocated on a locale.
Methods
__init__(is_shared, shape, dtype, itemsize, ...)create_inter_locale_win()Creates a mpi4py.MPI.Winwindow (over theinter_locale_commcommunicator) exposing thebuffermemory.create_peer_win()Creates a mpi4py.MPI.Winwindow (over thepeer_wincommunicator) exposing thebuffermemory.free()Free MPI windows and associated buffer memory. initialise_windows()Creates both of the peer_winandinter_locale_winmpi4py.MPI.Winobjects.Attributes
bufferA numpy.ndarraywith memory allocated using one ofmpi4py.MPI.Win.Allocate()ormpi4py.MPI.Win.Allocate_shared()as the buffer.dtypeA numpy.dtypeindicating the data type of elements stored in the array.inter_locale_commThe inter-locale mpi4py.MPI.WinMPI communicator.inter_locale_winThe mpi4py.MPI.Wincreated from theinter_locale_commcommunicator which exposesbufferfor inter-locale RMA access.inter_locale_win_initialisedReturns Trueif inter-locale RMA window (inter_locale_win) has been created.intra_locale_winThe mpi4py.MPI.Wincreated from theintra_locale_commcommunicator which exposesbufferfor intra-locale RMA access.intra_locale_win_memoryThe memory allocated using one of mpi4py.MPI.Win.Allocate()ormpi4py.MPI.Win.Allocate_shared().is_sharedA bool, ifTruethen buffer memory was allocated usingmpi4py.MPI.Win.Allocate_shared(), otherwise memory was allocated usingmpi4py.MPI.Win.Allocate().itemsizeAn intindicating the number of bytes per array element (same asnumpy.dtype.itemsize).peer_commThe peer mpi4py.MPI.CommMPI communicator.peer_winThe mpi4py.MPI.Wincreated from thepeer_commcommunicator which exposesbufferfor inter-locale RMA access.peer_win_initialisedReturns Trueif peer RMA window (peer_win) has been created.rank_loggerA logging.Loggerfor logging messages from all rank MPI processes ofpeer_comm.root_loggerA logging.Loggerfor logging messages from the root MPI process ofpeer_comm.shapeA sequence of intindicating the shape of the locale array.windows_initialisedReturns Trueif both peer RMA window (peer_win) and inter-locale RMA window (inter_locale_win) have been created.