1e2019ce2a
This reverts commit cb55c88a8b
.
86 строки
3.7 KiB
Plaintext
86 строки
3.7 KiB
Plaintext
.\" -*- nroff -*-
|
|
.\" Copyright 2013 Los Alamos National Security, LLC. All rights reserved.
|
|
.\" Copyright (c) 2010-2014 Cisco Systems, Inc. All rights reserved.
|
|
.\" Copyright 2006-2008 Sun Microsystems, Inc.
|
|
.\" Copyright (c) 1996 Thinking Machines Corporation
|
|
.\" $COPYRIGHT$
|
|
.TH MPI_Comm_idup 3 "#OMPI_DATE#" "#PACKAGE_VERSION#" "#PACKAGE_NAME#"
|
|
.SH NAME
|
|
\fBMPI_Comm_idup \fP \- Start the nonblocking duplication of an existing communicator with all its cached information.
|
|
|
|
.SH SYNTAX
|
|
.ft R
|
|
.SH C Syntax
|
|
.nf
|
|
#include <mpi.h>
|
|
int MPI_Comm_idup(MPI_Comm \fIcomm\fP, MPI_Comm\fI *newcomm\fP, MPI_Request\fI *request\fP)
|
|
|
|
.fi
|
|
.SH Fortran Syntax
|
|
.nf
|
|
USE MPI
|
|
! or the older form: INCLUDE 'mpif.h'
|
|
MPI_COMM_IDUP(\fICOMM, NEWCOMM, REQUEST, IERROR\fP)
|
|
INTEGER \fICOMM, NEWCOMM, REQUEST, IERROR\fP
|
|
|
|
.fi
|
|
.SH Fortran 2008 Syntax
|
|
.nf
|
|
USE mpi_f08
|
|
MPI_Comm_idup(\fIcomm\fP, \fInewcomm\fP, \fIrequest\fP, \fIierror\fP)
|
|
TYPE(MPI_Comm), INTENT(IN) :: \fIcomm\fP
|
|
TYPE(MPI_Comm), INTENT(OUT) :: \fInewcomm\fP
|
|
TYPE(MPI_Request), INTENT(OUT) :: \fIrequest\fP
|
|
INTEGER, OPTIONAL, INTENT(OUT) :: \fIierror\fP
|
|
|
|
.fi
|
|
.SH INPUT PARAMETER
|
|
.ft R
|
|
.TP 1i
|
|
comm
|
|
Communicator (handle).
|
|
|
|
.SH OUTPUT PARAMETERS
|
|
.ft R
|
|
.TP 1i
|
|
newcomm
|
|
Copy of comm (handle).
|
|
.ft R
|
|
.TP 1i
|
|
request
|
|
Communication request (handle).
|
|
.ft R
|
|
.TP 1i
|
|
IERROR
|
|
Fortran only: Error status (integer).
|
|
|
|
.SH DESCRIPTION
|
|
.ft R
|
|
MPI_Comm_idup starts the nonblocking duplication of an existing communicator comm with associated key
|
|
values. For each key value, the respective copy callback function determines the attribute value associated with this key in the new communicator; one particular action that a copy callback may take is to delete the attribute from the new communicator. Returns in newcomm a new communicator with the same group, any copied cached information, but a new context (see Section 5.7.1 of the MPI-1 Standard, "Functionality"). The communicator returned in \fInewcomm\fP will not be available until the request is complete.
|
|
.sp
|
|
The completion of a communicator duplication request can be determined by calling any of MPI_Wait, MPI_Waitany, MPI_Test, or MPI_Testany with the request returned by this function.
|
|
|
|
.SH NOTES
|
|
This operation is used to provide a parallel
|
|
library call with a duplicate communication space that has the same properties as the original communicator. This includes any attributes (see below) and topologies (see Chapter 6, "Process Topologies," in the MPI-1 Standard). This call is valid even if there are pending point-to-point communications involving the communicator comm. A typical call might involve an MPI_Comm_idup at the beginning of the parallel call, and an MPI_Comm_free of that duplicated communicator at the end of the call. Other models of communicator management are also possible.
|
|
.sp
|
|
This call applies to both intra- and intercommunicators.
|
|
|
|
Note that it is not defined by the MPI standard what happens if the
|
|
attribute copy callback invokes other MPI functions. In Open MPI, it
|
|
is not valid for attribute copy callbacks (or any of their children)
|
|
to add or delete attributes on the same object on which the attribute
|
|
copy callback is being invoked.
|
|
|
|
.SH ERRORS
|
|
Almost all MPI routines return an error value; C routines as the value of the function and Fortran routines in the last argument.
|
|
.sp
|
|
Before the error value is returned, the current MPI error handler is
|
|
called. By default, this error handler aborts the MPI job, except for I/O function errors. The error handler may be changed with MPI_Comm_set_errhandler; 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.
|
|
|
|
|
|
.SH SEE ALSO
|
|
MPI_Comm_dup
|
|
MPI_Comm_dup_with_info
|