source: proiecte/hpl/openmpi_compiled/share/man/man3/MPI_Testany.3 @ 97

Last change on this file since 97 was 97, checked in by (none), 14 years ago

Adding compiled files

File size: 4.3 KB
Line 
1.\"Copyright 2006-2008 Sun Microsystems, Inc.
2.\" Copyright (c) 1996 Thinking Machines Corporation
3.TH MPI_Testany 3 "Dec 08, 2009" "1.4" "Open MPI"
4.SH NAME
5\fBMPI_Testany\fP \- Tests for completion of any one previously initiated communication in a list.
6
7.SH SYNTAX
8.ft R
9.SH C Syntax
10.nf
11#include <mpi.h>
12int MPI_Testany(int \fIcount\fP, MPI_Request\fI *array_of_requests\fP,
13        int\fI *index\fP, int\fI *flag\fP, MPI_Status\fI *status\fP)
14
15.SH Fortran Syntax
16.nf
17INCLUDE 'mpif.h'
18MPI_TESTANY(\fICOUNT, ARRAY_OF_REQUESTS, INDEX, FLAG, STATUS, IERROR\fP)
19        LOGICAL \fIFLAG\fP
20        INTEGER \fICOUNT, ARRAY_OF_REQUESTS(*), INDEX\fP
21        INTEGER \fISTATUS(MPI_STATUS_SIZE), IERROR\fP
22
23.SH C++ Syntax
24.nf
25#include <mpi.h>
26static bool Request::Testany(int \fIcount\fP, Request \fIarray_of_requests\fP[],
27        int& \fIindex\fP, Status& \fIstatus\fP)
28
29static bool Request::Testany(int \fIcount\fP, Request \fIarray_of_requests\fP[],
30        int& \fIindex\fP)
31
32.SH INPUT PARAMETERS
33.ft R
34.TP 1i
35count
36List length (integer).
37.TP 1i
38array_of_requests
39Array of requests (array of handles).
40
41.SH OUTPUT PARAMETERS
42.ft R
43.TP 1i
44index
45Index of operation that completed, or MPI_UNDEFINED if none completed
46(integer).
47.TP 1i
48flag
49True if one of the operations is complete (logical).
50.TP 1i
51status
52Status object (status).
53.ft R
54.TP 1i
55IERROR
56Fortran only: Error status (integer).
57
58.SH DESCRIPTION
59.ft R
60MPI_Testany tests for completion of either one or none of the operations associated with active handles. In the former case, it returns \fIflag\fP = true, returns in \fIindex\fP the index of this request in the array, and returns in \fIstatus\fP the status of that operation; if the request was allocated by a nonblocking communication call then the request is deallocated and the handle is set to MPI_REQUEST_NULL. (The array is indexed from 0 in C, and from 1 in Fortran.) In the latter case (no operation completed), it returns \fIflag\fP = false, returns a value of MPI_UNDEFINED in \fIindex\fP, and \fIstatus\fP is undefined.
61.sp
62The array may contain null or inactive handles. If the array contains no active handles then the call returns immediately with \fIflag\fP = true, \fIindex\fP = MPI_UNDEFINED, and an empty \fIstatus\fP.
63.sp
64If the array of requests contains active handles then the execution of
65MPI_Testany(count, array_of_requests, index, status) has the same effect as the execution of MPI_Test(&\fIarray_of_requests[i\fP], \fIflag\fP, \fIstatus\fP), for \fIi\fP=0,1,...,count-1, in some arbitrary order, until one call returns \fIflag\fP = true, or all fail. In the former case, \fIindex\fP is set to the last value of \fIi\fP, and in the latter case, it is set to MPI_UNDEFINED. MPI_Testany with an array containing one active entry is equivalent to MPI_Test.
66.sp
67If your application does not need to examine the \fIstatus\fP field, you can save resources by using the predefined constant MPI_STATUS_IGNORE as a special value for the \fIstatus\fP argument.
68
69.SH ERRORS
70Almost 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.
71.sp
72Before the error value is returned, the current MPI error handler is
73called. By default, this error handler aborts the MPI job, except for
74I/O function errors. The error handler may be changed with
75MPI_Comm_set_errhandler, MPI_File_set_errhandler, or
76MPI_Win_set_errhandler (depending on the type of MPI handle that
77generated the request); the predefined error handler MPI_ERRORS_RETURN
78may be used to cause error values to be returned. Note that MPI does
79not guarantee that an MPI program can continue past an error.
80.sp
81Note that per MPI-1 section 3.2.5, MPI exceptions on requests passed
82to MPI_TESTANY do not set the status.MPI_ERROR field in the returned
83status.  The error code is passed to the back-end error handler and
84may be passed back to the caller through the return value of
85MPI_TESTANY if the back-end error handler returns it.  The pre-defined
86MPI error handler MPI_ERRORS_RETURN exhibits this behavior, for
87example.
88
89.SH SEE ALSO
90.ft R
91.sp
92MPI_Comm_set_errhandler
93.br
94MPI_File_set_errhandler
95.br
96MPI_Test
97.br
98MPI_Testall
99.br
100MPI_Testsome
101.br
102MPI_Wait
103.br
104MPI_Waitall
105.br
106MPI_Waitany
107.br
108MPI_Waitsome
109.br
110MPI_Win_set_errhandler
111.br
112
Note: See TracBrowser for help on using the repository browser.