MPI_Grequest_start - Create new generalized request
SYNOPSIS
C:
#include <mpi.h>
typedef MPI_Grequest_query_function(void *extra_state,
MPI_Status *status);
typedef MPI_Grequest_free_function(void *extra_state);
typedef MPI_Grequest_cancel_function(void *extra_state,
int complete);
int MPI_Grequest_start(query_fn, free_fn, cancel_fn,
extra_state, request);
MPI_Grequest_query_function *query_fn;
MPI_Grequest_free_function *free_fn;
MPI_Grequest_cancel_function *cancel_fn;
void *extra_state;
MPI_Request *request;
C++: (Not currently implemented)
#include <mpi.h>
typedef int MPI::Grequest::Query_function(void* extra_state,
MPI::Status& status);
typedef int MPI::Grequest::Free_function(void* extra_state);
typedef int MPI::Grequest::Cancel_function(void* extra_state,
bool complete);
static MPI::Grequest MPI::Grequest::Start(
const MPI::Grequest::Query_function query_fn,
const MPI::Grequest::Free_function free_fn,
const MPI::Grequest::Cancel_function cancel_fn,
void *extra_state);
Fortran:
INCLUDE "mpif.h" (or USE MPI)
SUBROUTINE MPI_GREQUEST_START(query_fn, free_fn, cancel_fn, extra_state, request, ierr)
EXTERNAL query_fn, free_fn, cancel_fn
INTEGER (KIND=MPI_ADDRESS_KIND) extra_state
INTEGER request
INTEGER ierr
END
SUBROUTINE GREQUEST_QUERY_FUNCTION(extra_state, status, ierr)
INTEGER(KIND=MPI_ADDRESS_KIND) extra_state
END
SUBROUTINE GREQUEST_FREE_FUNCTION(extra_state, ierr)
INTEGER(KIND=MPI_ADDRESS_KIND) extra_state
INTEGER ierr
END
SUBROUTINE GREQUEST_CANCEL_FUNCTION(extra_state, complete, ierr)
INTEGER(KIND=MPI_ADDRESS_KIND) extra_state
LOGICAL complete
INTEGER ierr
END
STANDARDS
This release implements the MPI 2.0 standard, as
documented by the MPI Forum in the July 1997 release of
MPI: A Message Passing Interface Standard.
DESCRIPTION
Calling MPI_Grequest_start() creates a new generalized
request. This routine accepts the following parameters:
query_fn Specifies the user-written callback function
invoked when request status is queried.
(function)
free_fn Specifies the user-written callback function
invoked when the request is freed.
(function)
cancel_fn Specifies the user-written callback function
invoked when the request is cancelled.
(function)
extra_state Specifies a void pointer associated with this
request. Each callback function is passed the
extra_state value associated with the request
on which it is operating. (void pointer)
request Returns the newly-created generalized request.
(handle)
ierr Specifies the error code of the operation. If
no error occured, MPI_SUCCESS is returned.
(integer)
NOTES
All MPI routines in Fortran (except for MPI_Wtime(3) and
MPI_Wtick(3)) have an additional ierr argument at the end
of the argument list. ierr is an integer and has the same
meaning as the return value of the routine in C. In
Fortran, MPI routines are subroutines and are invoked with
objects (for example, MPI_Datatype and MPI_Comm) are of
type integer.
SEE ALSO
MPI_Grequest_complete(3), MPI_Status_set_elements(3),
MPI_Status_set_cancelled(3)
Man(1) output converted with
man2html