Blame maint/docnotes

Packit Service c5cf8c
This file contains the named document blocks for use in generating the 
Packit Service c5cf8c
documentation.  This is divided into several main blocks:
Packit Service c5cf8c
   Threads and interrups/signals
Packit Service c5cf8c
   Fortran
Packit Service c5cf8c
   Misc MPI (e.g., status null)
Packit Service c5cf8c
   Error classes
Packit Service c5cf8c
Packit Service c5cf8c
-----------------------------------------------------------------------------
Packit Service c5cf8c
Note that only one of ThreadSafe and SignalSafe may be used
Packit Service c5cf8c
/*N ThreadSafe
Packit Service c5cf8c
   Thread and Interrupt Safety:
Packit Service c5cf8c
Packit Service c5cf8c
   This routine is thread-safe.  This means that this routine may be
Packit Service c5cf8c
   safely used by multiple threads without the need for any user-provided 
Packit Service c5cf8c
   thread locks.  However, the routine is not interrupt safe.  Typically, 
Packit Service c5cf8c
   this is due to the use of memory allocation routines such as 'malloc'
Packit Service c5cf8c
   or other non-MPICH runtime routines that are themselves not interrupt-safe.
Packit Service c5cf8c
N*/
Packit Service c5cf8c
/*N SignalSafe
Packit Service c5cf8c
   Thread and Interrupt Safety:
Packit Service c5cf8c
Packit Service c5cf8c
   This routine is both thread- and interrupt-safe. 
Packit Service c5cf8c
   This means that this routine may safely be used by multiple threads and
Packit Service c5cf8c
   from within a signal handler.   
Packit Service c5cf8c
N*/
Packit Service c5cf8c
/*N NotThreadSafe
Packit Service c5cf8c
   Thread and Interrupt Safety:
Packit Service c5cf8c
Packit Service c5cf8c
   The user is responsible for ensuring that multiple threads do not try to
Packit Service c5cf8c
   update the same MPI object from different threads.  This routine should 
Packit Service c5cf8c
   not be used from within a signal handler.
Packit Service c5cf8c
Packit Service c5cf8c
   The MPI standard defined a thread-safe interface but this does not 
Packit Service c5cf8c
   mean that all routines may be called without any thread locks.  For
Packit Service c5cf8c
   example, two threads must not attempt to change the contents of the
Packit Service c5cf8c
   same 'MPI_Info' object concurrently.  The user is responsible in this
Packit Service c5cf8c
   case for using some mechanism, such as thread locks, to ensure that 
Packit Service c5cf8c
   only one thread at a time makes use of this routine.  
Packit Service c5cf8c
N*/
Packit Service c5cf8c
Packit Service c5cf8c
Most of the MPI objects are static enough that it isn't necessary to
Packit Service c5cf8c
lock around the routines (even though some ops require updates).  Info isn't
Packit Service c5cf8c
expected to be as robust (there was discussion on the MPI-Forum list
Packit Service c5cf8c
on this). 
Packit Service c5cf8c
Packit Service c5cf8c
/*N ThreadSafeInfoRead
Packit Service c5cf8c
Packit Service c5cf8c
   Thread and Interrupt Safety:
Packit Service c5cf8c
Packit Service c5cf8c
   This routine is thread and interrupt safe only if no MPI routine that 
Packit Service c5cf8c
   updates or frees the same 'MPI_Info' object may be called concurrently 
Packit Service c5cf8c
   with this routine.
Packit Service c5cf8c
Packit Service c5cf8c
   The MPI standard defined a thread-safe interface but this does not 
Packit Service c5cf8c
   mean that all routines may be called without any thread locks.  For
Packit Service c5cf8c
   example, two threads must not attempt to change the contents of the
Packit Service c5cf8c
   same 'MPI_Info' object concurrently.  The user is responsible in this
Packit Service c5cf8c
   case for using some mechanism, such as thread locks, to ensure that 
Packit Service c5cf8c
   only one thread at a time makes use of this routine.  
Packit Service c5cf8c
N*/
Packit Service c5cf8c
Packit Service c5cf8c
/*N ThreadSafeNoUpdate
Packit Service c5cf8c
Packit Service c5cf8c
    Thread and Interrupt Safety:
Packit Service c5cf8c
Packit Service c5cf8c
   This routine is thread and interrupt safe only if no MPI routine that 
Packit Service c5cf8c
   updates or frees the same MPI object may be called concurrently 
Packit Service c5cf8c
   with this routine.
Packit Service c5cf8c
Packit Service c5cf8c
   The MPI standard defined a thread-safe interface but this does not 
Packit Service c5cf8c
   mean that all routines may be called without any thread locks.  For
Packit Service c5cf8c
   example, two threads must not attempt to change the contents of the
Packit Service c5cf8c
   same 'MPI_Info' object concurrently.  The user is responsible in this
Packit Service c5cf8c
   case for using some mechanism, such as thread locks, to ensure that 
Packit Service c5cf8c
   only one thread at a time makes use of this routine.  
Packit Service c5cf8c
Packit Service c5cf8c
N*/
Packit Service c5cf8c
-----------------------------------------------------------------------------
Packit Service c5cf8c
/*N Fortran
Packit Service c5cf8c
Notes for Fortran:
Packit Service c5cf8c
All MPI routines in Fortran (except for 'MPI_WTIME' and 'MPI_WTICK') have 
Packit Service c5cf8c
an additional argument 'ierr' at the end of the argument list.  'ierr'
Packit Service c5cf8c
is an integer and has the same meaning as the return value of the routine 
Packit Service c5cf8c
in C.  In Fortran, MPI routines are subroutines, and are invoked with the 
Packit Service c5cf8c
'call' statement.  
Packit Service c5cf8c
Packit Service c5cf8c
All MPI objects (e.g., 'MPI_Datatype', 'MPI_Comm') are of type 'INTEGER'
Packit Service c5cf8c
in Fortran.  
Packit Service c5cf8c
N*/
Packit Service c5cf8c
Packit Service c5cf8c
Try this as an alias
Packit Service c5cf8c
/*N fortran
Packit Service c5cf8c
.N Fortran
Packit Service c5cf8c
N*/
Packit Service c5cf8c
Packit Service c5cf8c
/*N FortranStatus
Packit Service c5cf8c
 The 'status' argument must be declared as an array of size 'MPI_STATUS_SIZE',
Packit Service c5cf8c
 as in 'integer status(MPI_STATUS_SIZE)'.
Packit Service c5cf8c
N*/
Packit Service c5cf8c
Packit Service c5cf8c
/*N FortStatusArray
Packit Service c5cf8c
 The 'status' argument must be declared as an array of sise 'MPI_STATUS_SIZE',
Packit Service c5cf8c
 as in 'integer status(MPI_STATUS_SIZE,10)' (assuming no more than 10 
Packit Service c5cf8c
 requests are provided as input).
Packit Service c5cf8c
N*/
Packit Service c5cf8c
Packit Service c5cf8c
/*N FortranString
Packit Service c5cf8c
Packit Service c5cf8c
 The sizes of MPI strings in Fortran are one less than the sizes of that 
Packit Service c5cf8c
 string in C/C++ because the C/C++ versions provide room for the trailing
Packit Service c5cf8c
 null character required by C/C++.  For example, 'MPI_MAX_ERROR_STRING' is 
Packit Service c5cf8c
 'mpif.h' is one smaller than the same value in 'mpi.h'.  See the MPI
Packit Service c5cf8c
 standard, sections 2.6.2 and 4.12.9.
Packit Service c5cf8c
Packit Service c5cf8c
N*/
Packit Service c5cf8c
Packit Service c5cf8c
Packit Service c5cf8c
-----------------------------------------------------------------------------
Packit Service c5cf8c
/*N collops
Packit Service c5cf8c
Notes on collective operations:
Packit Service c5cf8c
Packit Service c5cf8c
The reduction functions ('MPI_Op') do not return an error value.  As a result,
Packit Service c5cf8c
if the functions detect an error, all they can do is either call 'MPI_Abort'
Packit Service c5cf8c
or silently skip the problem.  Thus, if you change the error handler from
Packit Service c5cf8c
'MPI_ERRORS_ARE_FATAL' to something else, for example, 'MPI_ERRORS_RETURN', 
Packit Service c5cf8c
then no error may be indicated.
Packit Service c5cf8c
Packit Service c5cf8c
The reason for this is the performance problems in ensuring that 
Packit Service c5cf8c
all collective routines return the same error value.
Packit Service c5cf8c
N*/
Packit Service c5cf8c
Packit Service c5cf8c
/*N waitstatus
Packit Service c5cf8c
 Notes on the MPI_Status argument:
Packit Service c5cf8c
Packit Service c5cf8c
 The 'MPI_ERROR' field of the status return is only set if 
Packit Service c5cf8c
 the return from the MPI routine is 'MPI_ERR_IN_STATUS'.  That error class
Packit Service c5cf8c
 is only returned by the routines that take an array of status arguments
Packit Service c5cf8c
 ('MPI_Testall', 'MPI_Testsome', 'MPI_Waitall', and 'MPI_Waitsome').  In
Packit Service c5cf8c
 all other cases, the value of the 'MPI_ERROR' field in the status is
Packit Service c5cf8c
 unchanged.  See section 3.2.5 in the MPI-1.1 specification for the 
Packit Service c5cf8c
 exact text.
Packit Service c5cf8c
Packit Service c5cf8c
 For send operations, the only use of status is for 'MPI_Test_cancelled' or
Packit Service c5cf8c
 in the case that there is an error in one of the four routines that 
Packit Service c5cf8c
 may return the error class 'MPI_ERR_IN_STATUS', in which case the 
Packit Service c5cf8c
 'MPI_ERROR' field of status will be set.  In that case, the value 
Packit Service c5cf8c
 will be set to 'MPI_SUCCESS' for any send or receive operation that completed
Packit Service c5cf8c
 successfully, or 'MPI_ERR_PENDING' for any operation which has neither
Packit Service c5cf8c
 failed nor completed.
Packit Service c5cf8c
N*/
Packit Service c5cf8c
Packit Service c5cf8c
-----------------------------------------------------------------------------
Packit Service c5cf8c
MPI-2 deprecated some routines (see 2.6.1)
Packit Service c5cf8c
/*N Deprecated
Packit Service c5cf8c
 Deprecated Function:
Packit Service c5cf8c
 The MPI-2 standard deprecated a number of routines because MPI-2 provides
Packit Service c5cf8c
 better versions.  This routine is one of those that was deprecated.  The
Packit Service c5cf8c
 routine may continue to be used, but new code should use the replacement
Packit Service c5cf8c
 routine.
Packit Service c5cf8c
N*/
Packit Service c5cf8c
-----------------------------------------------------------------------------
Packit Service c5cf8c
/*N Errhandler
Packit Service c5cf8c
    Error handlers:
Packit Service c5cf8c
    The MPI error handler for this routine is taken from 'MPI_COMM_WORLD'.
Packit Service c5cf8c
    For MPI routines that do not have an obvious communicator, file, or
Packit Service c5cf8c
    window object, the MPI standard specifies that the error handler 
Packit Service c5cf8c
    attached to 'MPI_COMM_WORLD' be used.
Packit Service c5cf8c
N*/
Packit Service c5cf8c
-----------------------------------------------------------------------------
Packit Service c5cf8c
Packit Service c5cf8c
This part of the file contains definitions of the MPI error CLASSES for
Packit Service c5cf8c
inclusion in the man pages.  Use .N err name
Packit Service c5cf8c
Packit Service c5cf8c
/*N Errors
Packit Service c5cf8c
Errors:
Packit Service c5cf8c
Packit Service c5cf8c
 All MPI routines (except 'MPI_Wtime' and 'MPI_Wtick') return an error value; 
Packit Service c5cf8c
 C routines as the value of the function and Fortran routines in the last 
Packit Service c5cf8c
 argument.  Before the value is returned, the current MPI error handler is
Packit Service c5cf8c
 called.  By default, this error handler aborts the MPI job.  The error handler
Packit Service c5cf8c
 may be changed with 'MPI_Comm_set_errhandler' (for communicators), 
Packit Service c5cf8c
 'MPI_File_set_errhandler' (for files), and 'MPI_Win_set_errhandler' (for
Packit Service c5cf8c
 RMA windows).  The MPI-1 routine 'MPI_Errhandler_set' may be used but
Packit Service c5cf8c
 its use is deprecated.  The predefined error handler 
Packit Service c5cf8c
 'MPI_ERRORS_RETURN' may be used to cause error values to be returned.
Packit Service c5cf8c
 Note that MPI does `not` guarentee that an MPI program can continue past
Packit Service c5cf8c
 an error; however, MPI implementations will attempt to continue whenever
Packit Service c5cf8c
 possible.
Packit Service c5cf8c
Packit Service c5cf8c
N*/
Packit Service c5cf8c
/*N MPI_SUCCESS
Packit Service c5cf8c
. MPI_SUCCESS - No error; MPI routine completed successfully.
Packit Service c5cf8c
N*/
Packit Service c5cf8c
/*N MPI_ERR_BUFFER
Packit Service c5cf8c
. MPI_ERR_BUFFER - Invalid buffer pointer.  Usually a null buffer where
Packit Service c5cf8c
  one is not valid.
Packit Service c5cf8c
N*/
Packit Service c5cf8c
/*N MPI_ERR_COUNT
Packit Service c5cf8c
. MPI_ERR_COUNT - Invalid count argument.  Count arguments must be 
Packit Service c5cf8c
  non-negative; a count of zero is often valid.
Packit Service c5cf8c
N*/
Packit Service c5cf8c
/*N MPI_ERR_TYPE
Packit Service c5cf8c
. MPI_ERR_TYPE - Invalid datatype argument.  Additionally, this error can
Packit Service c5cf8c
  occur if an uncommitted MPI_Datatype (see 'MPI_Type_commit') is used
Packit Service c5cf8c
  in a communication call.
Packit Service c5cf8c
N*/
Packit Service c5cf8c
/*N MPI_ERR_TAG
Packit Service c5cf8c
.  MPI_ERR_TAG - Invalid tag argument.  Tags must be non-negative; tags
Packit Service c5cf8c
   in a receive ('MPI_Recv', 'MPI_Irecv', 'MPI_Sendrecv', etc.) may
Packit Service c5cf8c
   also be 'MPI_ANY_TAG'.  The largest tag value is available through the 
Packit Service c5cf8c
   the attribute 'MPI_TAG_UB'.
Packit Service c5cf8c
N*/
Packit Service c5cf8c
/*N MPI_ERR_COMM
Packit Service c5cf8c
. MPI_ERR_COMM - Invalid communicator.  A common error is to use a null
Packit Service c5cf8c
  communicator in a call (not even allowed in 'MPI_Comm_rank').
Packit Service c5cf8c
N*/
Packit Service c5cf8c
/*N MPI_ERR_RANK
Packit Service c5cf8c
. MPI_ERR_RANK - Invalid source or destination rank.  Ranks must be between
Packit Service c5cf8c
  zero and the size of the communicator minus one; ranks in a receive
Packit Service c5cf8c
  ('MPI_Recv', 'MPI_Irecv', 'MPI_Sendrecv', etc.) may also be 'MPI_ANY_SOURCE'.
Packit Service c5cf8c
N*/
Packit Service c5cf8c
/*N MPI_ERR_ROOT
Packit Service c5cf8c
. MPI_ERR_ROOT - Invalid root.  The root must be specified as a rank in the
Packit Service c5cf8c
  communicator.  Ranks must be between zero and the size of the communicator 
Packit Service c5cf8c
  minus one.
Packit Service c5cf8c
N*/
Packit Service c5cf8c
/*N MPI_ERR_GROUP
Packit Service c5cf8c
. MPI_ERR_GROUP - Null or invalid group passed to function.  
Packit Service c5cf8c
N*/
Packit Service c5cf8c
/*N MPI_ERR_OP
Packit Service c5cf8c
. MPI_ERR_OP - Invalid operation.  MPI operations (objects of type 'MPI_Op')
Packit Service c5cf8c
  must either be one of the predefined operations (e.g., 'MPI_SUM') or
Packit Service c5cf8c
  created with 'MPI_Op_create'.
Packit Service c5cf8c
N*/
Packit Service c5cf8c
/*N MPI_ERR_TOPOLOGY
Packit Service c5cf8c
. MPI_ERR_TOPOLOGY - Invalid topology.  Either there is no topology 
Packit Service c5cf8c
  associated with this communicator, or it is not the correct type (e.g.,
Packit Service c5cf8c
  'MPI_CART' when expecting 'MPI_GRAPH').
Packit Service c5cf8c
N*/
Packit Service c5cf8c
/*N MPI_ERR_DIMS
Packit Service c5cf8c
. MPI_ERR_DIMS - Invalid dimension argument.  A dimension argument
Packit Service c5cf8c
  is null or its length is less than or equal to zero.
Packit Service c5cf8c
N*/
Packit Service c5cf8c
/*N MPI_ERR_ARG
Packit Service c5cf8c
. MPI_ERR_ARG - Invalid argument.  Some argument is invalid and is not
Packit Service c5cf8c
  identified by a specific error class (e.g., 'MPI_ERR_RANK').
Packit Service c5cf8c
N*/
Packit Service c5cf8c
/*N MPI_ERR_PERM_OP
Packit Service c5cf8c
. MPI_ERR_ARG - Invalid argument; the error code associated with this
Packit Service c5cf8c
  error indicates an attempt to free an MPI permanent operation (e.g., 
Packit Service c5cf8c
  'MPI_SUM').
Packit Service c5cf8c
N*/
Packit Service c5cf8c
/*N MPI_ERR_PERM_KEY
Packit Service c5cf8c
. MPI_ERR_ARG - Invalid argument; the error code associated with this
Packit Service c5cf8c
  error indicates an attempt to free or chnage an MPI permanent keyval (e.g., 
Packit Service c5cf8c
  'MPI_TAG_UB').
Packit Service c5cf8c
N*/
Packit Service c5cf8c
/*N MPI_ERR_UNKNOWN
Packit Service c5cf8c
. MPI_ERR_UNKNOWN - Unknown error.  You should never see this.  If you
Packit Service c5cf8c
  do, report it to 'mpi-bugs@mcs.anl.gov'.
Packit Service c5cf8c
N*/
Packit Service c5cf8c
/*N MPI_ERR_TRUNCATE
Packit Service c5cf8c
. MPI_ERR_TRUNCATE - Message truncated on receive.  The buffer size specified
Packit Service c5cf8c
  was too small for the received message.  This is a recoverable error in
Packit Service c5cf8c
  the MPICH implementation.
Packit Service c5cf8c
N*/
Packit Service c5cf8c
/*N MPI_ERR_OTHER
Packit Service c5cf8c
. MPI_ERR_OTHER - Other error; use 'MPI_Error_string' to get more information
Packit Service c5cf8c
  about this error code. 
Packit Service c5cf8c
N*/
Packit Service c5cf8c
/*N MPI_ERR_KEYVAL
Packit Service c5cf8c
. MPI_ERR_KEYVAL - Invalid keyval
Packit Service c5cf8c
N*/
Packit Service c5cf8c
/*N MPI_ERR_INTERN
Packit Service c5cf8c
.  MPI_ERR_INTERN - An internal error has been detected.  This is fatal.
Packit Service c5cf8c
   Please send a bug report to 'mpi-bugs@mcs.anl.gov'.
Packit Service c5cf8c
N*/
Packit Service c5cf8c
/*N MPI_ERR_EXHAUSTED
Packit Service c5cf8c
.   MPI_ERR_INTERN - This error is returned when some part of the MPICH 
Packit Service c5cf8c
    implementation is unable to acquire memory.  
Packit Service c5cf8c
N*/
Packit Service c5cf8c
/*N MPI_ERR_IN_STATUS
Packit Service c5cf8c
. MPI_ERR_IN_STATUS - The actual error value is in the 'MPI_Status' argument.
Packit Service c5cf8c
  This error class is returned only from the multiple-completion routines
Packit Service c5cf8c
  ('MPI_Testall', 'MPI_Testany', 'MPI_Testsome', 'MPI_Waitall', 'MPI_Waitany',
Packit Service c5cf8c
  and 'MPI_Waitsome').  The field 'MPI_ERROR' in the status argument
Packit Service c5cf8c
  contains the error value or 'MPI_SUCCESS' (no error and complete) or
Packit Service c5cf8c
  'MPI_ERR_PENDING' to indicate that the request has not completed.
Packit Service c5cf8c
  
Packit Service c5cf8c
  The MPI Standard does not specify what the result of the multiple 
Packit Service c5cf8c
  completion routines is when an error occurs.  For example, in an 
Packit Service c5cf8c
  'MPI_WAITALL', does the routine wait for all requests to either fail or
Packit Service c5cf8c
  complete, or does it return immediately (with the MPI definition of 
Packit Service c5cf8c
  immediately, which means independent of actions of other MPI processes)?
Packit Service c5cf8c
  MPICH has chosen to make the return immediate (alternately, local in MPI 
Packit Service c5cf8c
  terms), and to use the error class 'MPI_ERR_PENDING' (introduced in MPI 1.1)
Packit Service c5cf8c
  to indicate which requests have not completed.  In most cases, only
Packit Service c5cf8c
  one request with an error will be detected in each call to an MPI routine
Packit Service c5cf8c
  that tests multiple requests.  The requests that have not been processed
Packit Service c5cf8c
  (because an error occured in one of the requests) will have their
Packit Service c5cf8c
  'MPI_ERROR' field marked with 'MPI_ERR_PENDING'.
Packit Service c5cf8c
N*/
Packit Service c5cf8c
/*N MPI_ERR_PENDING
Packit Service c5cf8c
. MPI_ERR_PENDING - Pending request (not an error).  See 'MPI_ERR_IN_STATUS'. 
Packit Service c5cf8c
  This value indicates that the request is not complete nor has a encountered
Packit Service c5cf8c
  a detected error.  
Packit Service c5cf8c
N*/
Packit Service c5cf8c
/*N MPI_ERR_REQUEST
Packit Service c5cf8c
. MPI_ERR_REQUEST - Invalid 'MPI_Request'.  Either null or, in the case of a
Packit Service c5cf8c
  'MPI_Start' or 'MPI_Startall', not a persistent request.
Packit Service c5cf8c
N*/
Packit Service c5cf8c
/*N MPI_ERR_BUFFER_ALIAS
Packit Service c5cf8c
.   MPI_ERR_BUFFER - This error class is associcated with an error code that
Packit Service c5cf8c
    indicates that two buffer arguments are `aliased`; that is, the 
Packit Service c5cf8c
    describe overlapping storage (often the exact same storage).  This
Packit Service c5cf8c
    is prohibited in MPI (because it is prohibited by the Fortran 
Packit Service c5cf8c
    standard, and rather than have a separate case for C and Fortran, the
Packit Service c5cf8c
    MPI Forum adopted the more restrictive requirements of Fortran).
Packit Service c5cf8c
N*/
Packit Service c5cf8c
Packit Service c5cf8c
/*N MPI_ERR_PERM_KEY
Packit Service c5cf8c
. MPI_ERR_ARG - This error class is associated with an error code that 
Packit Service c5cf8c
  indicates that an attempt was made to free one of the permanent keys.
Packit Service c5cf8c
N*/
Packit Service c5cf8c
Packit Service c5cf8c
/*N MPI_ERR_PERM_GROUP
Packit Service c5cf8c
. MPI_ERR_ARG - This error class is associated with an error code that 
Packit Service c5cf8c
  indicates that an attempt was made to free one of the permanent groups.
Packit Service c5cf8c
N*/
Packit Service c5cf8c
Packit Service c5cf8c
/*N MPI_ERR_INIT
Packit Service c5cf8c
. MPI_ERR_OTHER - This error class is associated with an error code that 
Packit Service c5cf8c
  indicates that an attempt was made to call 'MPI_INIT' a second time.
Packit Service c5cf8c
  'MPI_INIT' may only be called once in a program.
Packit Service c5cf8c
N*/
Packit Service c5cf8c
Packit Service c5cf8c
/*N MPI_ERR_INFO
Packit Service c5cf8c
. MPI_ERR_INFO - Invalid Info 
Packit Service c5cf8c
N*/
Packit Service c5cf8c
Packit Service c5cf8c
/*N MPI_ERR_INFO_KEY  
Packit Service c5cf8c
. MPI_ERR_INFO_KEY - Invalid or null key string for info.
Packit Service c5cf8c
N*/
Packit Service c5cf8c
Packit Service c5cf8c
/*N MPI_ERR_INFO_VALUE
Packit Service c5cf8c
. MPI_ERR_INFO_VALUE - Invalid or null value string for info
Packit Service c5cf8c
N*/
Packit Service c5cf8c
Packit Service c5cf8c
/*N MPI_ERR_INFO_NOKEY 
Packit Service c5cf8c
. MPI_ERR_INFO_NOKEY - 
Packit Service c5cf8c
N*/
Packit Service c5cf8c
Packit Service c5cf8c
/*N MPI_ERR_NAME
Packit Service c5cf8c
. MPI_ERR_NAME - 
Packit Service c5cf8c
N*/
Packit Service c5cf8c
Packit Service c5cf8c
/*N MPI_ERR_NO_MEM
Packit Service c5cf8c
. MPI_ERR_NO_MEM - Insufficient memory available for allocation by 
Packit Service c5cf8c
  'MPI_Alloc_mem'
Packit Service c5cf8c
N*/
Packit Service c5cf8c
Packit Service c5cf8c
/*N MPI_ERR_NOT_SAME
Packit Service c5cf8c
. MPI_ERR_NOT_SAME - 
Packit Service c5cf8c
N*/
Packit Service c5cf8c
Packit Service c5cf8c
/*N MPI_ERR_PORT
Packit Service c5cf8c
. MPI_ERR_PORT -
Packit Service c5cf8c
N*/
Packit Service c5cf8c
Packit Service c5cf8c
/*N MPI_ERR_QUOTA
Packit Service c5cf8c
. MPI_ERR_QUOTA - 
Packit Service c5cf8c
N*/
Packit Service c5cf8c
Packit Service c5cf8c
/*N MPI_ERR_SERVICE
Packit Service c5cf8c
. MPI_ERR_SERVICE - 
Packit Service c5cf8c
N*/
Packit Service c5cf8c
Packit Service c5cf8c
/*N MPI_ERR_SPAWN
Packit Service c5cf8c
. MPI_ERR_SPAWN -
Packit Service c5cf8c
N*/
Packit Service c5cf8c
Packit Service c5cf8c
/*N MPI_ERR_UNSUPPORTED_OPERATION
Packit Service c5cf8c
. MPI_ERR_UNSUPPORTED_OPERATION - 
Packit Service c5cf8c
N*/
Packit Service c5cf8c
Packit Service c5cf8c
/*N MPI_ERR_WIN
Packit Service c5cf8c
. MPI_ERR_WIN - Invalid MPI window object
Packit Service c5cf8c
N*/
Packit Service c5cf8c
Packit Service c5cf8c
/*N MPI_ERR_BASE
Packit Service c5cf8c
. MPI_ERR_BASE - 
Packit Service c5cf8c
N*/
Packit Service c5cf8c
Packit Service c5cf8c
/*N MPI_ERR_LOCKTYPE
Packit Service c5cf8c
. MPI_ERR_LOCKTYPE - 
Packit Service c5cf8c
N*/
Packit Service c5cf8c
Packit Service c5cf8c
/*N MPI_ERR_RMA_CONFLICT
Packit Service c5cf8c
. MPI_ERR_RMA_CONFLICT - 
Packit Service c5cf8c
N*/
Packit Service c5cf8c
Packit Service c5cf8c
/*N MPI_ERR_RMA_SYNC
Packit Service c5cf8c
. MPI_ERR_RMA_SYNC -
Packit Service c5cf8c
N*/
Packit Service c5cf8c
Packit Service c5cf8c
/*N MPI_ERR_SIZE
Packit Service c5cf8c
. MPI_ERR_SIZE - 
Packit Service c5cf8c
N*/
Packit Service c5cf8c
Packit Service c5cf8c
/*N MPI_ERR_DISP
Packit Service c5cf8c
. MPI_ERR_DISP - 
Packit Service c5cf8c
N*/
Packit Service c5cf8c
Packit Service c5cf8c
/*N MPI_ERR_ASSERT
Packit Service c5cf8c
. MPI_ERR_ASSERT - 
Packit Service c5cf8c
N*/
Packit Service c5cf8c
Packit Service c5cf8c
/* MPI I/O Information */
Packit Service c5cf8c
/*N MPI_ERR_FILE
Packit Service c5cf8c
. MPI_ERR_FILE - Invalid MPI File handle
Packit Service c5cf8c
N*/
Packit Service c5cf8c
Packit Service c5cf8c
/*N MPI_ERR_ACCESS
Packit Service c5cf8c
. MPI_ERR_ACCESS -
Packit Service c5cf8c
N*/
Packit Service c5cf8c
Packit Service c5cf8c
/*N MPI_ERR_AMODE
Packit Service c5cf8c
. MPI_ERR_AMODE - 
Packit Service c5cf8c
N*/
Packit Service c5cf8c
Packit Service c5cf8c
/*N MPI_ERR_BAD_FILE
Packit Service c5cf8c
. MPI_ERR_BAD_FILE - 
Packit Service c5cf8c
N*/
Packit Service c5cf8c
Packit Service c5cf8c
/*N MPI_ERR_FILE_EXISTS
Packit Service c5cf8c
. MPI_ERR_FILE_EXISTS - 
Packit Service c5cf8c
N*/
Packit Service c5cf8c
Packit Service c5cf8c
/*N MPI_ERR_FILE_IN_USE
Packit Service c5cf8c
. MPI_ERR_FILE_IN_USE - 
Packit Service c5cf8c
N*/
Packit Service c5cf8c
Packit Service c5cf8c
/*N MPI_ERR_NO_SPACE
Packit Service c5cf8c
. MPI_ERR_NO_SPACE - 
Packit Service c5cf8c
N*/
Packit Service c5cf8c
Packit Service c5cf8c
/*N MPI_ERR_NO_SUCH_FILE
Packit Service c5cf8c
. MPI_ERR_NO_SUCH_FILE - 
Packit Service c5cf8c
N*/
Packit Service c5cf8c
Packit Service c5cf8c
/*N MPI_ERR_IO
Packit Service c5cf8c
. MPI_ERR_IO - 
Packit Service c5cf8c
N*/
Packit Service c5cf8c
Packit Service c5cf8c
/*N MPI_ERR_READ_ONLY
Packit Service c5cf8c
. MPI_ERR_READ_ONLY - 
Packit Service c5cf8c
N*/
Packit Service c5cf8c
Packit Service c5cf8c
/*N MPI_ERR_CONVERSION
Packit Service c5cf8c
. MPI_ERR_CONVERSION - 
Packit Service c5cf8c
N*/
Packit Service c5cf8c
Packit Service c5cf8c
/*N MPI_ERR_DUP_DATAREP
Packit Service c5cf8c
. MPI_ERR_DUP_DATAREP - 
Packit Service c5cf8c
N*/
Packit Service c5cf8c
Packit Service c5cf8c
/*N MPI_ERR_UNSUPPORTED_DATAREP
Packit Service c5cf8c
. MPI_ERR_UNSUPPORTED_DATAREP - 
Packit Service c5cf8c
N*/
Packit Service c5cf8c
Packit Service c5cf8c
/*N MPI_T_ERR_NOT_INITIALIZED
Packit Service c5cf8c
. MPI_T_ERR_NOT_INITIALIZED - The MPI tool information interface is not initialized.
Packit Service c5cf8c
N*/
Packit Service c5cf8c
Packit Service c5cf8c
/*N MPI_T_ERR_MEMORY
Packit Service c5cf8c
. MPI_T_ERR_MEMORY - The MPI tool information interface is out of memory.
Packit Service c5cf8c
N*/
Packit Service c5cf8c
Packit Service c5cf8c
/*N MPI_T_ERR_CANNOT_INIT
Packit Service c5cf8c
. MPI_T_ERR_CANNOT_INIT - The MPI tool information interface is not in the state to be initialized.
Packit Service c5cf8c
N*/
Packit Service c5cf8c
Packit Service c5cf8c
/*N MPI_T_ERR_INVALID_INDEX
Packit Service c5cf8c
. MPI_T_ERR_INVALID_INDEX - Index is invalid or has been deleted.
Packit Service c5cf8c
N*/
Packit Service c5cf8c
Packit Service c5cf8c
/*N MPI_T_ERR_INVALID_ITEM
Packit Service c5cf8c
. MPI_T_ERR_INVALID_ITEM - Item index queried is out of range.
Packit Service c5cf8c
N*/
Packit Service c5cf8c
Packit Service c5cf8c
/*N MPI_T_ERR_INVALID_NAME
Packit Service c5cf8c
. MPI_T_ERR_INVALID_NAME - The variable or category name is invalid
Packit Service c5cf8c
N*/
Packit Service c5cf8c
Packit Service c5cf8c
/*N MPI_T_ERR_INVALID_HANDLE
Packit Service c5cf8c
. MPI_T_ERR_INVALID_HANDLE - The handle is invalid.
Packit Service c5cf8c
N*/
Packit Service c5cf8c
Packit Service c5cf8c
/*N MPI_T_ERR_OUT_OF_HANDLES
Packit Service c5cf8c
. MPI_T_ERR_OUT_OF_HANDLES - No more handles available.
Packit Service c5cf8c
N*/
Packit Service c5cf8c
Packit Service c5cf8c
/*N MPI_T_ERR_OUT_OF_SESSIONS
Packit Service c5cf8c
. MPI_T_ERR_OUT_OF_SESSIONS - No more sessions available.
Packit Service c5cf8c
N*/
Packit Service c5cf8c
Packit Service c5cf8c
/*N MPI_T_ERR_INVALID_SESSION
Packit Service c5cf8c
. MPI_T_ERR_INVALID_SESSION - Session argument is not valid.
Packit Service c5cf8c
N*/
Packit Service c5cf8c
Packit Service c5cf8c
/*N MPI_T_ERR_CVAR_SET_NOT_NOW
Packit Service c5cf8c
. MPI_T_ERR_CVAR_SET_NOT_NOW - The control variable can not be set at this moment.
Packit Service c5cf8c
N*/
Packit Service c5cf8c
Packit Service c5cf8c
/*N MPI_T_ERR_CVAR_SET_NEVER
Packit Service c5cf8c
. MPI_T_ERR_CVAR_SET_NEVER -  The control variable can not be set until end of execution.
Packit Service c5cf8c
N*/
Packit Service c5cf8c
Packit Service c5cf8c
/*N MPI_T_ERR_PVAR_NO_STARTSTOP
Packit Service c5cf8c
. MPI_T_ERR_PVAR_NO_STARTSTOP - The performance variable can not be started or stopped.
Packit Service c5cf8c
N*/
Packit Service c5cf8c
Packit Service c5cf8c
/*N MPI_T_ERR_PVAR_NO_WRITE
Packit Service c5cf8c
. MPI_T_ERR_PVAR_NO_WRITE - The performance variable can not be written or reset.
Packit Service c5cf8c
N*/
Packit Service c5cf8c
Packit Service c5cf8c
/*N MPI_T_ERR_PVAR_NO_ATOMIC
Packit Service c5cf8c
. MPI_T_ERR_PVAR_NO_ATOMIC - The performance variable can not be read/write atomically.
Packit Service c5cf8c
N*/
Packit Service c5cf8c
Packit Service c5cf8c
/*N NULL
Packit Service c5cf8c
Null Handles:
Packit Service c5cf8c
The MPI 1.1 specification, in the section on opaque objects, explicitly
Packit Service c5cf8c
disallows freeing a null communicator.  The text from the standard is\:
Packit Service c5cf8c
.vb
Packit Service c5cf8c
 A null handle argument is an erroneous IN argument in MPI calls, unless an
Packit Service c5cf8c
 exception is explicitly stated in the text that defines the function. Such
Packit Service c5cf8c
 exception is allowed for handles to request objects in Wait and Test calls
Packit Service c5cf8c
 (sections Communication Completion and Multiple Completions ). Otherwise, a
Packit Service c5cf8c
 null handle can only be passed to a function that allocates a new object and
Packit Service c5cf8c
 returns a reference to it in the handle.
Packit Service c5cf8c
.ve
Packit Service c5cf8c
N*/
Packit Service c5cf8c
Packit Service c5cf8c
/*N COMMNULL
Packit Service c5cf8c
 Because MPI specifies that null objects (e.g., 'MPI_COMM_NULL') are invalid
Packit Service c5cf8c
 as input to MPI routines unless otherwise specified, using 'MPI_COMM_NULL'
Packit Service c5cf8c
 as input to this routine is an error.
Packit Service c5cf8c
N*/
Packit Service c5cf8c
Packit Service c5cf8c
/*N AttrErrReturn
Packit Service c5cf8c
 
Packit Service c5cf8c
 Return value from attribute callbacks:
Packit Service c5cf8c
 The MPI-2 versions of the attribute callbacks should return either 
Packit Service c5cf8c
 'MPI_SUCCESS' on success or a valid MPI error code or class on failure.
Packit Service c5cf8c
 The MPI standard is ambiguous on this point, but as MPI-2 provides
Packit Service c5cf8c
 the routines 'MPI_Add_error_class' and 'MPI_Add_error_code' that allow the
Packit Service c5cf8c
 user to define and use MPI error codes and classes.
Packit Service c5cf8c
N*/