:ref:`MPI_Win_flush`, :ref:`MPI_Win_flush_all` - Complete all outstanding RMA operations at both the origin and the target
#include <mpi.h>
int MPI_Win_flush (int rank, MPI_Win win)
int MPI_Win_flush_all (MPI_Win win)
USE MPI
! or the older form: INCLUDE 'mpif.h'
MPI_WIN_FLUSH(RANK, WIN, IERROR)
INTEGER RANK, WIN, IERROR
MPI_WIN_FLUSH_ALL(WIN, IERROR)
INTEGER WIN, IERROR
USE mpi_f08
MPI_Win_flush(rank, win, ierror)
INTEGER, INTENT(IN) :: rank
TYPE(MPI_Win), INTENT(IN) :: win
INTEGER, OPTIONAL, INTENT(OUT) :: ierror
MPI_Win_flush_all(win, ierror)
TYPE(MPI_Win), INTENT(IN) :: win
INTEGER, OPTIONAL, INTENT(OUT) :: ierror
rank
: Rank of window (nonnegative integer).win
: Window object (handle).
ierror
: Fortran only: Error status (integer).
:ref:`MPI_Win_flush` completes all outstanding RMA operations initiated by the calling process to the target rank on the specified window. The operations are completed both at the origin and at the target. :ref:`MPI_Win_flush_all` completes all outstanding RMA operations to all targets.
Can only be called from within a passive target epoch.
.. seealso::
* :ref:`MPI_Win_flush_local`
* :ref:`MPI_Win_lock`
* :ref:`MPI_Win_lock_all`