Open MPI logo

MPI_Grequest_complete(3) man page (version 1.3.4)

  |   Home   |   Support   |   FAQ   |  

« Return to documentation listing



NAME

       MPI_Grequest_complete   -  Reports  that  a generalized request is com-
       plete.

SYNTAX


C Syntax

       #include <mpi.h>
       int MPI_Grequest_complete(MPI_Request request)

Fortran Syntax

       INCLUDE 'mpif.h'
       MPI_GREQUEST_COMPLETE(REQUEST, IERROR)
            INTEGER   REQUEST, IERROR

C++ Syntax

       #include <mpi.h>
       void MPI::Grequest::Complete()

INPUT/OUTPUT PARAMETER

       request   Generalized request (handle).

OUTPUT PARAMETER

       IERROR    Fortran only: Error status (integer).

DESCRIPTION

       MPI_Grequest_complete informs MPI that the  operations  represented  by
       the   generalized   request   request   are   complete.   A   call   to
       MPI_Wait(request, status) will return, and a call to  MPI_Test(request,
       flag,  status)  will  return  flag=true  only  after a call to MPI_Gre-
       quest_complete has declared that these operations are complete.

       MPI imposes no restrictions on the code executed by the callback  func-
       tions.  However,  new  nonblocking operations should be defined so that
       the  general  semantic  rules  about  MPI  calls  such   as   MPI_Test,
       MPI_Request_free,  or  MPI_Cancel  still  hold.  For example, all these
       calls are supposed to be local and nonblocking. Therefore, the callback
       functions  query_fn,  free_fn,  or cancel_fn should invoke blocking MPI
       communication calls only if the context is such that  these  calls  are
       guaranteed  to return in finite time. Once MPI_Cancel has been invoked,
       the canceled operation should complete in finite  time,  regardless  of
       the state of other processes (the operation has acquired "local" seman-
       tics). It should either succeed or fail without side-effects. The  user
       should guarantee these same properties for newly defined operations.

ERRORS

       Almost  all MPI routines return an error value; C routines as the value
       of the function and Fortran routines in the last  argument.  C++  func-
       tions  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.

1.3.4                            Nov 11, 2009         MPI_Grequest_complete(3)

« Return to documentation listing