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

FreeBSD Manual Pages

  
 
  

home | help
MPI_Waitany(3)			      MPI			MPI_Waitany(3)

NAME
       MPI_Waitany -  Waits for	any specified MPI Request to complete

SYNOPSIS
       int MPI_Waitany(int count, MPI_Request array_of_requests[], int *indx,
       MPI_Status *status)

INPUT PARAMETERS
       count  -	count (non-negative integer)

INPUT/OUTPUT PARAMETERS
       array_of_requests
	      -	array of requests (handle)

OUTPUT PARAMETERS
       indx   -	index of handle	for operation that completed (integer)
       status -	status object (Status)

NOTES
       If  all of the requests are MPI_REQUEST_NULL , then indx	is returned as
       MPI_UNDEFINED , and status is returned as an empty status.

       While it	is possible to list a request handle more than once in the ar-
       ray_of_requests,	such an	action is considered erroneous and  may	 cause
       the program to unexecpectedly terminate or produce incorrect results.

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.

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 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.

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 guarantee 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_ARG
	      -	Invalid	argument.  Some	argument is invalid and	is not identi-
	      fied by a	specific error class (e.g., MPI_ERR_RANK ).
       MPI_ERR_COUNT
	      -	Invalid	count argument.	 Count arguments must be non-negative;
	      a	count of zero is often valid.
       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_OTHER
	      -	Other error; use  MPI_Error_string  to	get  more  information
	      about this error code.

				   2/3/2025			MPI_Waitany(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=MPI_Waitany&sektion=3&manpath=FreeBSD+Ports+14.3.quarterly>

home | help