Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
MPI_Test(3)			      MPI			   MPI_Test(3)

NAME
       MPI_Test	-  Tests for the completion of a request

SYNOPSIS
       int MPI_Test(MPI_Request	*request, int *flag, MPI_Status	*status)

INPUT PARAMETER
       request
	      -	MPI request (handle)

OUTPUT PARAMETER
       flag   -	true if	operation completed (logical)
       status -	status object (Status).	 May be	MPI_STATUS_IGNORE .

THREAD AND INTERRUPT SAFETY
       This  routine  is  thread-safe.	 This  means  that this	routine	may be
       safely used by multiple threads without the need	for any	 user-provided
       thread  locks.  However,	the routine is not interrupt safe.  Typically,
       this is due to the use of memory	allocation routines such as malloc  or
       other  non-MPICH	 runtime  routines  that are themselves	not interrupt-
       safe.

NOTES ON THE MPI_STATUS	ARGUMENT
       The MPI_ERROR field of the status return	is only	set if the return from
       the  MPI	 routine  is MPI_ERR_IN_STATUS .  That error class is only re-
       turned by the routines  that  take  an  array  of  status  arguments  (
       MPI_Testall  , MPI_Testsome , MPI_Waitall , and MPI_Waitsome ).	In all
       other cases, the	value of the MPI_ERROR field  in  the  status  is  un-
       changed.	  See section 3.2.5 in the MPI-1.1 specification for the exact
       text.

       For send	operations, the	only use of status is  for  MPI_Test_cancelled
       or  in the case that there is an	error in one of	the four routines that
       may return the error  class  MPI_ERR_IN_STATUS  ,  in  which  case  the
       MPI_ERROR field of status will be set.  In that case, the value will be
       set to MPI_SUCCESS for any send or  receive  operation  that  completed
       successfully,  or  MPI_ERR_PENDING  for any operation which has neither
       failed nor completed.

NOTES FOR FORTRAN
       All MPI routines	in Fortran (except for MPI_WTIME and MPI_WTICK )  have
       an  additional  argument	ierr 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
       the call	statement.

       All MPI objects (e.g., MPI_Datatype , MPI_Comm )	are of type INTEGER in
       Fortran.

       The  status  argument  must  be	declared  as an	array of size MPI_STA-
       TUS_SIZE	, as in	integer	status(MPI_STATUS_SIZE)	.

ERRORS
       All MPI routines	(except	MPI_Wtime and  MPI_Wtick  )  return  an	 error
       value;  C routines as the value of the function and Fortran routines in
       the last	argument.  Before the value is returned, the current MPI error
       handler	is called.  By default,	this error handler aborts the MPI job.
       The error handler may be	changed	with MPI_Comm_set_errhandler (for com-
       municators),  MPI_File_set_errhandler  (for files), and MPI_Win_set_er-
       rhandler	(for RMA windows).  The	MPI-1 routine  MPI_Errhandler_set  may
       be  used	 but  its  use	is  deprecated.	  The predefined error handler
       MPI_ERRORS_RETURN may be	used to	cause error  values  to	 be  returned.
       Note  that MPI does not guarentee that an MPI program can continue past
       an error; however, MPI implementations will attempt to  continue	 when-
       ever possible.

       MPI_SUCCESS
	      -	No error; MPI routine completed	successfully.
       MPI_ERR_REQUEST
	      -	 Invalid  MPI_Request  .   Either  null	 or,  in the case of a
	      MPI_Start	or MPI_Startall	, not a	persistent request.
       MPI_ERR_ARG
	      -	Invalid	argument.  Some	argument is invalid and	is not identi-
	      fied by a	specific error class (e.g., MPI_ERR_RANK ).

LOCATION
       src/mpi/pt2pt/test.c

				   9/20/2012			   MPI_Test(3)

NAME | SYNOPSIS | INPUT PARAMETER | OUTPUT PARAMETER | THREAD AND INTERRUPT SAFETY | NOTES ON THE MPI_STATUS ARGUMENT | NOTES FOR FORTRAN | ERRORS | LOCATION

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=MPI_Test&sektion=3&manpath=FreeBSD+12.2-RELEASE+and+Ports>

home | help