Blame www/www3/MPI_T_finalize.html

Packit 0848f5
Packit 0848f5
<HTML>
Packit 0848f5
<HEAD>
Packit 0848f5
<META NAME="GENERATOR" CONTENT="DOCTEXT">
Packit 0848f5
<TITLE>MPI_T_finalize</TITLE>
Packit 0848f5
</HEAD>
Packit 0848f5
<BODY BGCOLOR="FFFFFF">
Packit 0848f5

MPI_T_finalize

Packit 0848f5
Finalize the MPI tool information interface 
Packit 0848f5

Synopsis

Packit 0848f5
Packit 0848f5
int MPI_T_finalize(void)
Packit 0848f5
Packit 0848f5

Notes

Packit 0848f5
This routine may be called as often as the corresponding MPI_T_init_thread() routine
Packit 0848f5
up to the current point of execution. Calling it more times returns a corresponding
Packit 0848f5
error code. As long as the number of calls to MPI_T_finalize() is smaller than the
Packit 0848f5
number of calls to MPI_T_init_thread() up to the current point of execution, the MPI
Packit 0848f5
tool information interface remains initialized and calls to its routines are permissible.
Packit 0848f5
Further, additional calls to MPI_T_init_thread() after one or more calls to MPI_T_finalize()
Packit 0848f5
are permissible. Once MPI_T_finalize() is called the same number of times as the routine
Packit 0848f5
MPI_T_init_thread() up to the current point of execution, the MPI tool information
Packit 0848f5
interface is no longer initialized. The interface can be reinitialized by subsequent calls
Packit 0848f5
to MPI_T_init_thread().
Packit 0848f5

Packit 0848f5
At the end of the program execution, unless MPI_Abort() is called, an application must
Packit 0848f5
have called MPI_T_init_thread() and MPI_T_finalize() an equal number of times.
Packit 0848f5

Packit 0848f5

Thread and Interrupt Safety

Packit 0848f5

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

Packit 0848f5

Errors

Packit 0848f5

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

Packit 0848f5
MPI_SUCCESS
No error; MPI routine completed successfully.
Packit 0848f5
Packit 0848f5
MPI_T_ERR_NOT_INITIALIZED
The MPI tool information interface is not initialized.
Packit 0848f5
Packit 0848f5

Packit 0848f5
<H0>See Also</H0>
Packit 0848f5
MPI_T_init_thread
Packit 0848f5

Packit 0848f5
</BODY></HTML>