75 lines
2.5 KiB
Groff
75 lines
2.5 KiB
Groff
.TH MPI_T_finalize 3 "6/5/2019" " " "MPI"
|
|
.SH NAME
|
|
MPI_T_finalize \- Finalize the MPI tool information interface
|
|
.SH SYNOPSIS
|
|
.nf
|
|
int MPI_T_finalize(void)
|
|
.fi
|
|
.SH NOTES
|
|
This routine may be called as often as the corresponding MPI_T_init_thread() routine
|
|
up to the current point of execution. Calling it more times returns a corresponding
|
|
error code. As long as the number of calls to MPI_T_finalize() is smaller than the
|
|
number of calls to MPI_T_init_thread() up to the current point of execution, the MPI
|
|
tool information interface remains initialized and calls to its routines are permissible.
|
|
Further, additional calls to MPI_T_init_thread() after one or more calls to MPI_T_finalize()
|
|
are permissible. Once MPI_T_finalize() is called the same number of times as the routine
|
|
MPI_T_init_thread() up to the current point of execution, the MPI tool information
|
|
interface is no longer initialized. The interface can be reinitialized by subsequent calls
|
|
to MPI_T_init_thread().
|
|
|
|
At the end of the program execution, unless MPI_Abort() is called, an application must
|
|
have called MPI_T_init_thread() and MPI_T_finalize() an equal number of times.
|
|
|
|
.SH 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
|
|
.I malloc
|
|
or other non-MPICH runtime routines that are themselves not interrupt-safe.
|
|
|
|
.SH ERRORS
|
|
|
|
All MPI routines (except
|
|
.I MPI_Wtime
|
|
and
|
|
.I 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
|
|
.I MPI_Comm_set_errhandler
|
|
(for communicators),
|
|
.I MPI_File_set_errhandler
|
|
(for files), and
|
|
.I MPI_Win_set_errhandler
|
|
(for
|
|
RMA windows). The MPI-1 routine
|
|
.I MPI_Errhandler_set
|
|
may be used but
|
|
its use is deprecated. The predefined error handler
|
|
.I MPI_ERRORS_RETURN
|
|
may be used to cause error values to be returned.
|
|
Note that MPI does
|
|
.B not
|
|
guarentee that an MPI program can continue past
|
|
an error; however, MPI implementations will attempt to continue whenever
|
|
possible.
|
|
|
|
.PD 0
|
|
.TP
|
|
.B MPI_SUCCESS
|
|
- No error; MPI routine completed successfully.
|
|
.PD 1
|
|
.PD 0
|
|
.TP
|
|
.B MPI_T_ERR_NOT_INITIALIZED
|
|
- The MPI tool information interface is not initialized.
|
|
.PD 1
|
|
|
|
.SH SEE ALSO
|
|
MPI_T_init_thread
|
|
.br
|