Open MPI logo

MPI_Win_test(3) man page (version 1.8.8)

  |   Home   |   Support   |   FAQ   |  

« Return to documentation listing

Table of Contents


MPI_Win_test - Attempts to complete an RMA exposure epoch; a nonblocking

version of MPI_Win_wait


C Syntax

#include <mpi.h>
int MPI_Win_test(MPI_Win win, int *flag)

Fortran Syntax

INCLUDE ’mpif.h’

C++ Syntax

#include <mpi.h>
bool MPI::Win::Test() const

Input Parameters

Window object (handle)

Output Parameters

Fortran only: Error status (integer).
The returning state of the test for epoch closure.


MPI_Win_test is a one-sided MPI communication synchronization call, a nonblocking version of MPI_Win_wait. It returns flag = true if MPI_Win_wait would return, flag = false otherwise. The effect of return of MPI_Win_test with flag = true is the same as the effect of a return of MPI_Win_wait. If flag = false is returned, then the call has no visible effect.

Invoke MPI_Win_test only where MPI_Win_wait can be invoked. Once the call has returned flag = true, it must not be invoked anew, until the window is posted anew.


Almost all MPI routines return an error value; C routines as the value of the function and Fortran routines in the last argument. C++ functions do not return errors. If the default error handler is set to MPI::ERRORS_THROW_EXCEPTIONS, then on error the C++ exception mechanism will be used to throw an MPI::Exception object.

Before the error value is returned, the current MPI error handler is called. By default, this error handler aborts the MPI job, except for I/O function errors. The error handler may be changed with MPI_Win_set_errhandler; the predefined error handler MPI_ERRORS_RETURN may be used to cause error values to be returned. Note that MPI does not guarantee that an MPI program can continue past an error.

See Also

MPI_Win_post MPI_Win_wait

Table of Contents

« Return to documentation listing