Converted first half of MPI_C* (from MPI_Cancel to MPI_Close_port)
Signed-off-by: Colton Kammes <ckammes@nd.edu>
Этот коммит содержится в:
родитель
dca2058e2f
Коммит
a08f8d30dd
@ -1,84 +0,0 @@
|
||||
.\" -*- nroff -*-
|
||||
.\" Copyright (c) 2010-2014 Cisco Systems, Inc. All rights reserved.
|
||||
.\" Copyright 2006-2008 Sun Microsystems, Inc.
|
||||
.\" Copyright (c) 1996 Thinking Machines Corporation
|
||||
.\" Copyright (c) 2020 Google, LLC. All rights reserved.
|
||||
.\" $COPYRIGHT$
|
||||
.TH MPI_Cancel 3 "#OMPI_DATE#" "#PACKAGE_VERSION#" "#PACKAGE_NAME#"
|
||||
.SH NAME
|
||||
\fBMPI_Cancel\fP \- Cancels a communication request.
|
||||
|
||||
.SH SYNTAX
|
||||
.ft R
|
||||
.SH C Syntax
|
||||
.nf
|
||||
#include <mpi.h>
|
||||
int MPI_Cancel(MPI_Request\fI *request\fP)
|
||||
|
||||
.fi
|
||||
.SH Fortran Syntax
|
||||
.nf
|
||||
USE MPI
|
||||
! or the older form: INCLUDE 'mpif.h'
|
||||
MPI_CANCEL(\fIREQUEST\fP, \fIIERROR\fP)
|
||||
INTEGER \fIREQUEST\fP, \fIIERROR\fP
|
||||
|
||||
.fi
|
||||
.SH Fortran 2008 Syntax
|
||||
.nf
|
||||
USE mpi_f08
|
||||
MPI_Cancel(\fIrequest\fP, \fIierror\fP)
|
||||
TYPE(MPI_Request), INTENT(IN) :: \fIrequest\fP
|
||||
INTEGER, OPTIONAL, INTENT(OUT) :: \fIierror\fP
|
||||
|
||||
.fi
|
||||
.SH INPUT PARAMETER
|
||||
.ft R
|
||||
.TP 1i
|
||||
request
|
||||
Communication request (handle).
|
||||
|
||||
.SH OUTPUT PARAMETER
|
||||
.ft R
|
||||
.TP 1i
|
||||
IERROR
|
||||
Fortran only: Error status (integer).
|
||||
|
||||
.SH DESCRIPTION
|
||||
.ft R
|
||||
The MPI_Cancel operation allows pending communications to be canceled. This is required for cleanup. Posting a send or a receive ties up user resources (send or receive buffers), and a cancel may be needed to free these resources gracefully.
|
||||
.sp
|
||||
A call to MPI_Cancel marks for cancellation a pending, nonblocking communication operation (send or receive). The cancel call is local. It returns immediately, possibly before the communication is actually canceled. It is still necessary to complete a communication that has been marked for cancellation, using a call to MPI_Request_free, MPI_Wait, or MPI_Test (or any of the derived operations).
|
||||
.sp
|
||||
If a communication is marked for cancellation, then an MPI_Wait call for that communication is guaranteed to return, irrespective of the activities of other processes (i.e., MPI_Wait behaves as a local function); similarly if MPI_Test is repeatedly called in a busy wait loop for a canceled communication, then MPI_Test will eventually be successful.
|
||||
.sp
|
||||
MPI_Cancel can be used to cancel a communication that uses a persistent request (see Section 3.9 in the MPI-1 Standard, "Persistent Communication Requests") in the same way it is used for nonpersistent requests. A successful cancellation cancels the active communication, but not the request itself. After the call to MPI_Cancel and the subsequent call to MPI_Wait or MPI_Test, the request becomes inactive and can be activated for a new communication.
|
||||
.sp
|
||||
The successful cancellation of a buffered send frees the buffer space occupied by the pending message.
|
||||
.sp
|
||||
Either the cancellation succeeds or the communication succeeds, but not both. If a send is marked for cancellation, then it must be the case that either the send completes normally, in which case the message sent is received at the destination process, or that the send is successfully canceled, in which case no part of the message is received at the destination. Then, any matching receive has to be satisfied by another send. If a receive is marked for cancellation, then it must be the case that either the receive completes normally, or that the receive is successfully canceled, in which case no part of the receive buffer is altered. Then, any matching send has to be satisfied by another receive.
|
||||
.sp
|
||||
If the operation has been canceled, then information to that effect will be returned in the status argument of the operation that completes the communication.
|
||||
|
||||
.SH NOTES
|
||||
.ft R
|
||||
The primary expected use of MPI_Cancel is in multi-buffering schemes,
|
||||
where speculative MPI_Irecvs are made. When the
|
||||
computation completes, some of these requests may remain;
|
||||
using MPI_Cancel allows the user to cancel these unsatisfied requests.
|
||||
|
||||
.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
|
||||
.ft R
|
||||
.sp
|
||||
.nf
|
||||
MPI_Probe
|
||||
MPI_Iprobe
|
||||
MPI_Test_cancelled
|
||||
MPI_Cart_coords
|
||||
|
114
ompi/mpi/man/man3/MPI_Cancel.md
Исполняемый файл
114
ompi/mpi/man/man3/MPI_Cancel.md
Исполняемый файл
@ -0,0 +1,114 @@
|
||||
# Name
|
||||
|
||||
`MPI_Cancel` - Cancels a communication request.
|
||||
|
||||
# Syntax
|
||||
|
||||
## C Syntax
|
||||
|
||||
```c
|
||||
#include <mpi.h>
|
||||
|
||||
int MPI_Cancel(MPI_Request *request)
|
||||
```
|
||||
|
||||
## Fortran Syntax
|
||||
|
||||
```fortran
|
||||
USE MPI
|
||||
! or the older form: INCLUDE 'mpif.h'
|
||||
|
||||
MPI_CANCEL(REQUEST, IERROR)
|
||||
INTEGER REQUEST, IERROR
|
||||
```
|
||||
|
||||
## Fortran 2008 Syntax
|
||||
|
||||
```fortran
|
||||
USE mpi_f08
|
||||
|
||||
MPI_Cancel(request, ierror)
|
||||
TYPE(MPI_Request), INTENT(IN) :: request
|
||||
INTEGER, OPTIONAL, INTENT(OUT) :: ierror
|
||||
```
|
||||
|
||||
|
||||
# Input Parameter
|
||||
|
||||
* `request` : Communication request (handle).
|
||||
|
||||
# Output Parameter
|
||||
|
||||
* `IERROR` : Fortran only: Error status (integer).
|
||||
|
||||
# Description
|
||||
|
||||
The `MPI_Cancel` operation allows pending communications to be canceled.
|
||||
This is required for cleanup. Posting a send or a receive ties up user
|
||||
resources (send or receive buffers), and a cancel may be needed to free
|
||||
these resources gracefully.
|
||||
|
||||
A call to `MPI_Cancel` marks for cancellation a pending, nonblocking
|
||||
communication operation (send or receive). The cancel call is local. It
|
||||
returns immediately, possibly before the communication is actually
|
||||
canceled. It is still necessary to complete a communication that has
|
||||
been marked for cancellation, using a call to `MPI_Request_free,`
|
||||
`MPI_Wait`, or `MPI_Test` (or any of the derived operations).
|
||||
|
||||
If a communication is marked for cancellation, then an `MPI_Wait` call for
|
||||
that communication is guaranteed to return, irrespective of the
|
||||
activities of other processes (i.e., `MPI_Wait` behaves as a local
|
||||
function); similarly if `MPI_Test` is repeatedly called in a busy wait
|
||||
loop for a canceled communication, then `MPI_Test` will eventually be
|
||||
successful.
|
||||
|
||||
`MPI_Cancel` can be used to cancel a communication that uses a persistent
|
||||
`request` (see Section 3.9 in the MPI-1 Standard, "Persistent
|
||||
Communication Requests") in the same way it is used for nonpersistent
|
||||
`request`s. A successful cancellation cancels the active communication,
|
||||
but not the `request` itself. After the call to `MPI_Cancel` and the
|
||||
subsequent call to `MPI_Wait` or `MPI_Test`, the `request` becomes inactive
|
||||
and can be activated for a new communication.
|
||||
|
||||
The successful cancellation of a buffered send frees the buffer space
|
||||
occupied by the pending message.
|
||||
|
||||
Either the cancellation succeeds or the communication succeeds, but not
|
||||
both. If a send is marked for cancellation, then it must be the case
|
||||
that either the send completes normally, in which case the message sent
|
||||
is received at the destination process, or that the send is successfully
|
||||
canceled, in which case no part of the message is received at the
|
||||
destination. Then, any matching receive has to be satisfied by another
|
||||
send. If a receive is marked for cancellation, then it must be the case
|
||||
that either the receive completes normally, or that the receive is
|
||||
successfully canceled, in which case no part of the receive buffer is
|
||||
altered. Then, any matching send has to be satisfied by another receive.
|
||||
|
||||
If the operation has been canceled, then information to that effect will
|
||||
be returned in the status argument of the operation that completes the
|
||||
communication.
|
||||
|
||||
# Notes
|
||||
|
||||
The primary expected use of `MPI_Cancel` is in multi-buffering schemes,
|
||||
where speculative `MPI_Irecvs` are made. When the computation completes,
|
||||
some of these `request`s may remain; using `MPI_Cancel` allows the user to
|
||||
cancel these unsatisfied `request`s.
|
||||
|
||||
# Errors
|
||||
|
||||
Almost all MPI routines return an error value; C routines as the value
|
||||
of the function and Fortran routines in the last argument.
|
||||
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.
|
||||
|
||||
# See Also
|
||||
|
||||
[`MPI_Probe`(3)](MPI_Probe.html)
|
||||
[`MPI_Iprobe`(3)](MPI_Iprobe.html)
|
||||
[`MPI_Test_cancelled`(3)](MPI_Test_cancelled.html)
|
||||
[`MPI_Cart_coords`(3)](MPI_Cart_coords.html)
|
@ -1,69 +0,0 @@
|
||||
.\" -*- nroff -*-
|
||||
.\" Copyright (c) 2010-2014 Cisco Systems, Inc. All rights reserved.
|
||||
.\" Copyright 2006-2008 Sun Microsystems, Inc.
|
||||
.\" Copyright (c) 1996 Thinking Machines Corporation
|
||||
.\" Copyright (c) 2020 Google, LLC. All rights reserved.
|
||||
.\" $COPYRIGHT$
|
||||
.TH MPI_Cart_coords 3 "#OMPI_DATE#" "#PACKAGE_VERSION#" "#PACKAGE_NAME#"
|
||||
.SH NAME
|
||||
\fBMPI_Cart_coords\fP \- Determines process coords in Cartesian topology given rank in group.
|
||||
|
||||
.SH SYNTAX
|
||||
.ft R
|
||||
.SH C Syntax
|
||||
.nf
|
||||
#include <mpi.h>
|
||||
int MPI_Cart_coords(MPI_Comm \fIcomm\fP, int\fI rank\fP, int\fI maxdims\fP,
|
||||
int\fI coords\fP[])
|
||||
|
||||
.fi
|
||||
.SH Fortran Syntax
|
||||
.nf
|
||||
USE MPI
|
||||
! or the older form: INCLUDE 'mpif.h'
|
||||
MPI_CART_COORDS(\fICOMM\fP,\fI RANK\fP,\fI MAXDIMS\fP,\fI COORDS\fP, \fIIERROR\fP)
|
||||
INTEGER \fICOMM\fP,\fI RANK\fP,\fI MAXDIMS\fP,\fI COORDS(\fI*\fP)\fP,\fI IERROR
|
||||
|
||||
.fi
|
||||
.SH Fortran 2008 Syntax
|
||||
.nf
|
||||
USE mpi_f08
|
||||
MPI_Cart_coords(\fIcomm\fP, \fIrank\fP, \fImaxdims\fP, \fIcoords\fP, \fIierror\fP)
|
||||
TYPE(MPI_Comm), INTENT(IN) :: \fIcomm\fP
|
||||
INTEGER, INTENT(IN) :: \fIrank\fP, \fImaxdims\fP
|
||||
INTEGER, INTENT(OUT) :: \fIcoords(maxdims)\fP
|
||||
INTEGER, OPTIONAL, INTENT(OUT) :: \fIierror\fP
|
||||
|
||||
.fi
|
||||
.SH INPUT PARAMETERS
|
||||
.ft R
|
||||
.TP 1i
|
||||
comm
|
||||
Communicator with Cartesian structure (handle).
|
||||
.TP 1i
|
||||
rank
|
||||
Rank of a process within group of comm (integer).
|
||||
.TP 1i
|
||||
maxdims
|
||||
Length of vector coords in the calling program (integer).
|
||||
|
||||
.SH OUTPUT PARAMETERS
|
||||
.ft R
|
||||
.TP 1i
|
||||
coords
|
||||
Integer array (of size ndims,which was defined by MPI_Cart_create call) containing the Cartesian coordinates of specified process (integer).
|
||||
.ft R
|
||||
.TP 1i
|
||||
IERROR
|
||||
Fortran only: Error status (integer).
|
||||
|
||||
.SH DESCRIPTION
|
||||
.ft R
|
||||
MPI_Cart_coords provies a mapping of ranks to Cartesian coordinates.
|
||||
|
||||
.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.
|
||||
|
66
ompi/mpi/man/man3/MPI_Cart_coords.md
Исполняемый файл
66
ompi/mpi/man/man3/MPI_Cart_coords.md
Исполняемый файл
@ -0,0 +1,66 @@
|
||||
# Name
|
||||
|
||||
`MPI_Cart_coords` - Determines process coords in Cartesian topology
|
||||
given rank in group.
|
||||
|
||||
# Syntax
|
||||
|
||||
## C Syntax
|
||||
|
||||
```c
|
||||
#include <mpi.h>
|
||||
|
||||
int MPI_Cart_coords(MPI_Comm comm, int rank, int maxdims,
|
||||
int coords[])
|
||||
```
|
||||
|
||||
## Fortran Syntax
|
||||
|
||||
```fortran
|
||||
USE MPI
|
||||
! or the older form: INCLUDE 'mpif.h'
|
||||
|
||||
MPI_CART_COORDS(COMM, RANK, MAXDIMS, COORDS, IERROR)
|
||||
INTEGER COMM, RANK, MAXDIMS, COORDS(*), IERROR
|
||||
```
|
||||
|
||||
## Fortran 2008 Syntax
|
||||
|
||||
```fortran
|
||||
USE mpi_f08
|
||||
|
||||
MPI_Cart_coords(comm, rank, maxdims, coords, ierror)
|
||||
TYPE(MPI_Comm), INTENT(IN) :: comm
|
||||
INTEGER, INTENT(IN) :: rank, maxdims
|
||||
INTEGER, INTENT(OUT) :: coords(maxdims)
|
||||
INTEGER, OPTIONAL, INTENT(OUT) :: ierror
|
||||
```
|
||||
|
||||
# Input Parameters
|
||||
|
||||
* `comm` : Communicator with Cartesian structure (handle).
|
||||
* `rank` : Rank of a process within group of comm (integer).
|
||||
* `maxdims` : Length of vector coords in the calling program (integer).
|
||||
Length of vector coords in the calling program (integer).
|
||||
|
||||
# Output Parameters
|
||||
|
||||
* `coords` : Integer array (of size ndims,which was defined by MPI_Cart_create
|
||||
call) containing the Cartesian coordinates of specified process
|
||||
(integer).
|
||||
* `IERROR` : Fortran only: Error status (integer).
|
||||
|
||||
# Description
|
||||
|
||||
`MPI_Cart_coords` provies a mapping of `rank`s to Cartesian coordinates.
|
||||
|
||||
# Errors
|
||||
|
||||
Almost all MPI routines return an error value; C routines as the value
|
||||
of the function and Fortran routines in the last argument.
|
||||
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.
|
@ -1,81 +0,0 @@
|
||||
.\" -*- 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 (c) 2020 Google, LLC. All rights reserved.
|
||||
.\" $COPYRIGHT$
|
||||
.TH MPI_Cart_create 3 "#OMPI_DATE#" "#PACKAGE_VERSION#" "#PACKAGE_NAME#"
|
||||
.SH NAME
|
||||
\fBMPI_Cart_create\fP \- Makes a new communicator to which Cartesian topology information has been attached.
|
||||
|
||||
.SH SYNTAX
|
||||
.ft R
|
||||
.SH C Syntax
|
||||
.nf
|
||||
#include <mpi.h>
|
||||
int MPI_Cart_create(MPI_Comm\fI comm_old\fP, int\fI ndims\fP, const int\fI dims\fP[],
|
||||
const int\fI periods\fP[], int\fI reorder\fP, MPI_Comm\fI *comm_cart\fP)
|
||||
|
||||
.fi
|
||||
.SH Fortran Syntax
|
||||
.nf
|
||||
USE MPI
|
||||
! or the older form: INCLUDE 'mpif.h'
|
||||
MPI_CART_CREATE(\fICOMM_OLD\fP,\fI NDIMS\fP,\fI DIMS\fP,\fI PERIODS\fP,\fI REORDER\fP,
|
||||
\fICOMM_CART\fP,\fI IERROR\fP)
|
||||
INTEGER \fICOMM_OLD\fP,\fI NDIMS\fP,\fI DIMS\fP(*),\fI COMM_CART\fP,\fI IERROR\fP
|
||||
LOGICAL \fIPERIODS\fI(*),\fI REORDER\fP
|
||||
|
||||
.fi
|
||||
.SH Fortran 2008 Syntax
|
||||
.nf
|
||||
USE mpi_f08
|
||||
MPI_Cart_create(\fIcomm_old\fP, \fIndims\fP, \fIdims\fP, \fIperiods\fP, \fIreorder\fP, \fIcomm_cart\fP, \fIierror\fP)
|
||||
TYPE(MPI_Comm), INTENT(IN) :: \fIcomm_old\fP
|
||||
INTEGER, INTENT(IN) :: \fIndims\fP, \fIdims(ndims)\fP
|
||||
LOGICAL, INTENT(IN) :: \fIperiods(ndims)\fP, \fIreorder\fP
|
||||
TYPE(MPI_Comm), INTENT(OUT) :: \fIcomm_cart\fP
|
||||
INTEGER, OPTIONAL, INTENT(OUT) :: \fIierror\fP
|
||||
|
||||
.fi
|
||||
.SH INPUT PARAMETERS
|
||||
.ft R
|
||||
.TP 1i
|
||||
comm_old
|
||||
Input communicator (handle).
|
||||
.TP 1i
|
||||
ndims
|
||||
Number of dimensions of Cartesian grid (integer).
|
||||
.TP 1i
|
||||
dims
|
||||
Integer array of size ndims specifying the number of processes in each
|
||||
dimension.
|
||||
.TP 1i
|
||||
periods
|
||||
Logical array of size ndims specifying whether the grid is periodic (true)
|
||||
or not (false) in each dimension.
|
||||
.TP 1i
|
||||
reorder
|
||||
Ranking may be reordered (true) or not (false) (logical).
|
||||
|
||||
.SH OUTPUT PARAMETERS
|
||||
.ft R
|
||||
.TP 1i
|
||||
comm_cart
|
||||
Communicator with new Cartesian topology (handle).
|
||||
.ft R
|
||||
.TP 1i
|
||||
IERROR
|
||||
Fortran only: Error status (integer).
|
||||
|
||||
.SH DESCRIPTION
|
||||
.ft R
|
||||
MPI_Cart_create returns a handle to a new communicator to which the Cartesian topology information is attached. If reorder = false then the rank of each process in the new group is identical to its rank in the old group. Otherwise, the function may reorder the processes (possibly so as to choose a good embedding of the virtual topology onto the physical machine). If the total size of the Cartesian grid is smaller than the size of the group of comm, then some processes are returned MPI_COMM_NULL, in analogy to MPI_Comm_split. The call is erroneous if it specifies a grid that is larger than the group size.
|
||||
|
||||
.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.
|
||||
|
80
ompi/mpi/man/man3/MPI_Cart_create.md
Исполняемый файл
80
ompi/mpi/man/man3/MPI_Cart_create.md
Исполняемый файл
@ -0,0 +1,80 @@
|
||||
# Name
|
||||
|
||||
`MPI_Cart_create` - Makes a new communicator to which Cartesian
|
||||
topology information has been attached.
|
||||
|
||||
# Syntax
|
||||
|
||||
## C Syntax
|
||||
|
||||
```c
|
||||
#include <mpi.h>
|
||||
|
||||
int MPI_Cart_create(MPI_Comm comm_old, int ndims, const int dims[],
|
||||
|
||||
const int periods[], int reorder, MPI_Comm *comm_cart)
|
||||
```
|
||||
|
||||
## Fortran Syntax
|
||||
|
||||
```fortran
|
||||
USE MPI
|
||||
! or the older form: INCLUDE 'mpif.h'
|
||||
|
||||
MPI_CART_CREATE(COMM_OLD, NDIMS, DIMS, PERIODS, REORDER,
|
||||
COMM_CART, IERROR)
|
||||
INTEGER COMM_OLD, NDIMS, DIMS(*), COMM_CART, IERROR
|
||||
LOGICAL PERIODS(*), REORDER
|
||||
```
|
||||
|
||||
## Fortran 2008 Syntax
|
||||
|
||||
```fortran
|
||||
USE mpi_f08
|
||||
|
||||
MPI_Cart_create(comm_old, ndims, dims, periods, reorder, comm_cart, ierror)
|
||||
TYPE(MPI_Comm), INTENT(IN) :: comm_old
|
||||
INTEGER, INTENT(IN) :: ndims, dims(ndims)
|
||||
LOGICAL, INTENT(IN) :: periods(ndims), reorder
|
||||
TYPE(MPI_Comm), INTENT(OUT) :: comm_cart
|
||||
INTEGER, OPTIONAL, INTENT(OUT) :: ierror
|
||||
```
|
||||
|
||||
|
||||
# Input Parameters
|
||||
|
||||
* `comm_old` : Input communicator (handle).
|
||||
* `ndims` : Number of dimensions of Cartesian grid (integer).
|
||||
* `dims` : Integer array of size ndims specifying the number of processes in
|
||||
each dimension.
|
||||
* `periods` : Logical array of size ndims specifying whether the grid is periodic
|
||||
(true) or not (false) in each dimension.
|
||||
* `reorder` : Ranking may be reordered (true) or not (false) (logical).
|
||||
|
||||
# Output Parameters
|
||||
|
||||
* `comm_cart` : Communicator with new Cartesian topology (handle).
|
||||
* `IERROR` : Fortran only: Error status (integer).
|
||||
|
||||
# Description
|
||||
|
||||
`MPI_Cart_create` returns a handle to a new communicator to which the
|
||||
Cartesian topology information is attached. If `reorder` = false then the
|
||||
rank of each process in the new group is identical to its rank in the
|
||||
old group. Otherwise, the function may `reorder` the processes (possibly
|
||||
so as to choose a good embedding of the virtual topology onto the
|
||||
physical machine). If the total size of the Cartesian grid is smaller
|
||||
than the size of the group of comm, then some processes are returned
|
||||
`MPI_COMM_NULL`, in analogy to `MPI_Comm_split`. The call is erroneous if it
|
||||
specifies a grid that is larger than the group size.
|
||||
|
||||
# Errors
|
||||
|
||||
Almost all MPI routines return an error value; C routines as the value
|
||||
of the function and Fortran routines in the last argument.
|
||||
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.
|
@ -1,80 +0,0 @@
|
||||
.\" -*- nroff -*-
|
||||
.\" Copyright 2014 Cisco Systems, Inc. All rights reserved.
|
||||
.\" Copyright 2006-2008 Sun Microsystems, Inc.
|
||||
.\" Copyright (c) 1996 Thinking Machines Corporation
|
||||
.\" Copyright (c) 2020 Google, LLC. All rights reserved.
|
||||
.\" $COPYRIGHT$
|
||||
.TH MPI_Cart_get 3 "#OMPI_DATE#" "#PACKAGE_VERSION#" "#PACKAGE_NAME#"
|
||||
.SH NAME
|
||||
\fBMPI_Cart_get\fP \- Retrieves Cartesian topology information associated with a communicator.
|
||||
|
||||
.SH SYNTAX
|
||||
.ft R
|
||||
.SH C Syntax
|
||||
.nf
|
||||
#include <mpi.h>
|
||||
int MPI_Cart_get(MPI_Comm\fI comm\fP, int\fI maxdims\fP, int\fI dims\fP[], int\fI periods\fP[],
|
||||
int\fI coords\fP[])
|
||||
|
||||
.fi
|
||||
.SH Fortran Syntax
|
||||
.nf
|
||||
USE MPI
|
||||
! or the older form: INCLUDE 'mpif.h'
|
||||
MPI_CART_GET(\fICOMM\fP, \fIMAXDIMS\fP, \fIDIMS\fP, \fIPERIODS\fP, \fICOORDS\fP, \fIIERROR\fP)
|
||||
INTEGER \fICOMM\fP, \fIMAXDIMS\fP, \fIDIMS\fP(*), \fICOORDS\fP(*), \fIIERROR\fP
|
||||
LOGICAL \fIPERIODS\fP(*)
|
||||
|
||||
.fi
|
||||
.SH Fortran 2008 Syntax
|
||||
.nf
|
||||
USE mpi_f08
|
||||
MPI_Cart_get(\fIcomm\fP, \fImaxdims\fP, \fIdims\fP, \fIperiods\fP, \fIcoords\fP, \fIierror\fP)
|
||||
TYPE(MPI_Comm), INTENT(IN) :: \fIcomm\fP
|
||||
INTEGER, INTENT(IN) :: \fImaxdims\fP
|
||||
INTEGER, INTENT(OUT) :: \fIdims(maxdims)\fP, \fIcoords(maxdims)\fP
|
||||
LOGICAL, INTENT(OUT) :: \fIperiods(maxdims)\fP
|
||||
INTEGER, OPTIONAL, INTENT(OUT) :: \fIierror\fP
|
||||
|
||||
.fi
|
||||
.SH INPUT PARAMETERS
|
||||
.ft R
|
||||
.TP 1i
|
||||
comm
|
||||
Communicator with Cartesian structure (handle).
|
||||
.TP 1i
|
||||
maxdims
|
||||
Length of vectors dims, periods, and coords in the calling program (integer).
|
||||
|
||||
.SH OUTPUT PARAMETERS
|
||||
.ft R
|
||||
.TP 1i
|
||||
dims
|
||||
Number of processes for each Cartesian dimension (array of integers).
|
||||
.TP 1i
|
||||
periods
|
||||
Periodicity (true/false) for each Cartesian dimension (array of logicals).
|
||||
.TP 1i
|
||||
coords
|
||||
Coordinates of calling process in Cartesian structure (array of integers).
|
||||
.ft R
|
||||
.TP 1i
|
||||
IERROR
|
||||
Fortran only: Error status (integer).
|
||||
|
||||
.SH DESCRIPTION
|
||||
.ft R
|
||||
The functions MPI_Cartdim_get and MPI_Cart_get return the Cartesian topology information that was associated with a communicator by MPI_Cart_create.
|
||||
|
||||
.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
|
||||
.ft R
|
||||
.sp
|
||||
.nf
|
||||
MPI_Cartdim_get
|
||||
MPI_Cart_create
|
77
ompi/mpi/man/man3/MPI_Cart_get.md
Исполняемый файл
77
ompi/mpi/man/man3/MPI_Cart_get.md
Исполняемый файл
@ -0,0 +1,77 @@
|
||||
# Name
|
||||
|
||||
`MPI_Cart_get` - Retrieves Cartesian topology information associated
|
||||
with a communicator.
|
||||
|
||||
# Syntax
|
||||
|
||||
## C Syntax
|
||||
|
||||
```c
|
||||
#include <mpi.h>
|
||||
|
||||
int MPI_Cart_get(MPI_Comm comm, int maxdims, int dims[], int periods[],
|
||||
int coords[])
|
||||
```
|
||||
|
||||
## Fortran Syntax
|
||||
|
||||
```fortran
|
||||
USE MPI
|
||||
! or the older form: INCLUDE 'mpif.h'
|
||||
|
||||
MPI_CART_GET(COMM, MAXDIMS, DIMS, PERIODS, COORDS, IERROR)
|
||||
INTEGER COMM, MAXDIMS, DIMS(*), COORDS(*), IERROR
|
||||
LOGICAL PERIODS(*)
|
||||
```
|
||||
|
||||
## Fortran 2008 Syntax
|
||||
|
||||
```fortran
|
||||
USE mpi_f08
|
||||
|
||||
MPI_Cart_get(comm, maxdims, dims, periods, coords, ierror)
|
||||
TYPE(MPI_Comm), INTENT(IN) :: comm
|
||||
INTEGER, INTENT(IN) :: maxdims
|
||||
INTEGER, INTENT(OUT) :: dims(maxdims), coords(maxdims)
|
||||
LOGICAL, INTENT(OUT) :: periods(maxdims)
|
||||
INTEGER, OPTIONAL, INTENT(OUT) :: ierror
|
||||
```
|
||||
|
||||
# Input Parameters
|
||||
|
||||
* `comm` : Communicator with Cartesian structure (handle).
|
||||
* `maxdims` : Length of vectors dims, periods, and coords in the calling program
|
||||
(integer).
|
||||
|
||||
# Output Parameters
|
||||
|
||||
* `dims` : Number of processes for each Cartesian dimension (array of
|
||||
integers).
|
||||
* `periods` : Periodicity (true/false) for each Cartesian dimension (array of
|
||||
logicals).
|
||||
* `coords` : Coordinates of calling process in Cartesian structure (array of
|
||||
integers).
|
||||
* `IERROR` : Fortran only: Error status (integer).
|
||||
|
||||
# Description
|
||||
|
||||
The functions `MPI_Cartdim_get` and `MPI_Cart_get` return the Cartesian
|
||||
topology information that was associated with a `comm`unicator by
|
||||
`MPI_Cart_create.`
|
||||
|
||||
# Errors
|
||||
|
||||
Almost all MPI routines return an error value; C routines as the value
|
||||
of the function and Fortran routines in the last argument.
|
||||
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.
|
||||
|
||||
# See Also
|
||||
|
||||
[`MPI_Cartdim_get`(3)](MPI_Cartdim_get.html)
|
||||
[`MPI_Cart_create`(3)](MPI_Cart_create.html)
|
@ -1,82 +0,0 @@
|
||||
.\" -*- nroff -*-
|
||||
.\" Copyright 2013 Los Alamos National Security, LLC. All rights reserved.
|
||||
.\" Copyright 2010 Cisco Systems, Inc. All rights reserved.
|
||||
.\" Copyright 2006-2008 Sun Microsystems, Inc.
|
||||
.\" Copyright (c) 1996 Thinking Machines Corporation
|
||||
.\" Copyright (c) 2020 Google, LLC. All rights reserved.
|
||||
.\" $COPYRIGHT$
|
||||
.TH MPI_Cart_map 3 "#OMPI_DATE#" "#PACKAGE_VERSION#" "#PACKAGE_NAME#"
|
||||
.SH NAME
|
||||
\fBMPI_Cart_map \fP \- Maps process to Cartesian topology information.
|
||||
|
||||
.SH SYNTAX
|
||||
.ft R
|
||||
.SH C Syntax
|
||||
.nf
|
||||
#include <mpi.h>
|
||||
int MPI_Cart_map(MPI_Comm \fIcomm\fP, int\fI ndims\fP, const int\fI dims\fP[],
|
||||
const int\fI periods\fP[], int\fI *newrank\fP)
|
||||
|
||||
.fi
|
||||
.SH Fortran Syntax
|
||||
.nf
|
||||
USE MPI
|
||||
! or the older form: INCLUDE 'mpif.h'
|
||||
MPI_CART_MAP(\fICOMM, NDIMS, DIMS, PERIODS, NEWRANK, IERROR\fP)
|
||||
INTEGER \fICOMM, NDIMS, DIMS(*), NEWRANK, IERROR\fP
|
||||
LOGICAL \fIPERIODS\fP(*)
|
||||
|
||||
.fi
|
||||
.SH Fortran 2008 Syntax
|
||||
.nf
|
||||
USE mpi_f08
|
||||
MPI_Cart_map(\fIcomm\fP, \fIndims\fP, \fIdims\fP, \fIperiods\fP, \fInewrank\fP, \fIierror\fP)
|
||||
TYPE(MPI_Comm), INTENT(IN) :: \fIcomm\fP
|
||||
INTEGER, INTENT(IN) :: \fIndims\fP, \fIdims(ndims)\fP
|
||||
LOGICAL, INTENT(IN) :: \fIperiods(ndims)\fP
|
||||
INTEGER, INTENT(OUT) :: \fInewrank\fP
|
||||
INTEGER, OPTIONAL, INTENT(OUT) :: \fIierror\fP
|
||||
|
||||
.fi
|
||||
.SH INPUT PARAMETERS
|
||||
.ft R
|
||||
.TP 1i
|
||||
comm
|
||||
Input communicator (handle).
|
||||
.TP 1i
|
||||
ndims
|
||||
Number of dimensions of Cartesian structure (integer).
|
||||
.TP 1i
|
||||
dims
|
||||
Integer array of size ndims specifying the number of processes in each
|
||||
coordinate direction.
|
||||
.TP 1i
|
||||
periods
|
||||
Logical array of size ndims specifying the periodicity specification in each coordinate direction.
|
||||
|
||||
.SH OUTPUT PARAMETERS
|
||||
.ft R
|
||||
.TP 1i
|
||||
newrank
|
||||
Reordered rank of the calling process; MPI_UNDEFINED if calling process does not belong to grid (integer).
|
||||
.ft R
|
||||
.TP 1i
|
||||
IERROR
|
||||
Fortran only: Error status (integer).
|
||||
|
||||
.SH DESCRIPTION
|
||||
.ft R
|
||||
MPI_Cart_map and MPI_Graph_map can be used to implement all other topology functions. In general they will not be called by the user directly, unless he or she is creating additional virtual topology capability other than that provided by MPI.
|
||||
.sp
|
||||
MPI_Cart_map computes an "optimal" placement for the calling process on the physical machine. A possible implementation of this function is to always return the rank of the calling process, that is, not to perform any reordering.
|
||||
|
||||
.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
|
||||
.ft R
|
||||
.sp
|
||||
MPI_Graph_map
|
79
ompi/mpi/man/man3/MPI_Cart_map.md
Исполняемый файл
79
ompi/mpi/man/man3/MPI_Cart_map.md
Исполняемый файл
@ -0,0 +1,79 @@
|
||||
# Name
|
||||
|
||||
`MPI_Cart_map` - Maps process to Cartesian topology information.
|
||||
|
||||
# Syntax
|
||||
|
||||
## C Syntax
|
||||
|
||||
```c
|
||||
#include <mpi.h>
|
||||
|
||||
int MPI_Cart_map(MPI_Comm comm, int ndims, const int dims[],
|
||||
const int periods[], int *newrank)
|
||||
```
|
||||
|
||||
## Fortran Syntax
|
||||
|
||||
```fortran
|
||||
USE MPI
|
||||
! or the older form: INCLUDE 'mpif.h'
|
||||
|
||||
MPI_CART_MAP(COMM, NDIMS, DIMS, PERIODS, NEWRANK, IERROR)
|
||||
INTEGER COMM, NDIMS, DIMS(*), NEWRANK, IERROR
|
||||
LOGICAL PERIODS(*)
|
||||
```
|
||||
|
||||
## Fortran 2008 Syntax
|
||||
|
||||
```fortran
|
||||
USE mpi_f08
|
||||
|
||||
MPI_Cart_map(comm, ndims, dims, periods, newrank, ierror)
|
||||
TYPE(MPI_Comm), INTENT(IN) :: comm
|
||||
INTEGER, INTENT(IN) :: ndims, dims(ndims)
|
||||
LOGICAL, INTENT(IN) :: periods(ndims)
|
||||
INTEGER, INTENT(OUT) :: newrank
|
||||
INTEGER, OPTIONAL, INTENT(OUT) :: ierror
|
||||
```
|
||||
|
||||
# Input Parameters
|
||||
|
||||
* `comm` : Input communicator (handle).
|
||||
* `ndims` : Number of dimensions of Cartesian structure (integer).
|
||||
* `dims` : Integer array of size ndims specifying the number of processes in
|
||||
each coordinate direction.
|
||||
* `periods` : Logical array of size ndims specifying the periodicity specification
|
||||
in each coordinate direction.
|
||||
|
||||
# Output Parameters
|
||||
|
||||
* `newrank` : Reordered rank of the calling process; `MPI_UNDEFINED` if calling
|
||||
process does not belong to grid (integer).
|
||||
* `IERROR` : Fortran only: Error status (integer).
|
||||
|
||||
# Description
|
||||
|
||||
`MPI_Cart_map` and `MPI_Graph_map` can be used to implement all other
|
||||
topology functions. In general they will not be called by the user
|
||||
directly, unless he or she is creating additional virtual topology
|
||||
capability other than that provided by MPI.
|
||||
`MPI_Cart_map` computes an "optimal" placement for the calling process
|
||||
on the physical machine. A possible implementation of this function is
|
||||
to always return the rank of the calling process, that is, not to
|
||||
perform any reordering.
|
||||
|
||||
# Errors
|
||||
|
||||
Almost all MPI routines return an error value; C routines as the value
|
||||
of the function and Fortran routines in the last argument.
|
||||
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.
|
||||
|
||||
# See Also
|
||||
|
||||
[`MPI_Graph_map`(3)](MPI_Graph_map.html)
|
@ -1,69 +0,0 @@
|
||||
.\" -*- nroff -*-
|
||||
.\" Copyright 2010 Cisco Systems, Inc. All rights reserved.
|
||||
.\" Copyright 2006-2008 Sun Microsystems, Inc.
|
||||
.\" Copyright (c) 1996 Thinking Machines Corporation
|
||||
.\" Copyright (c) 2020 Google, LLC. All rights reserved.
|
||||
.\" $COPYRIGHT$
|
||||
.TH MPI_Cart_rank 3 "#OMPI_DATE#" "#PACKAGE_VERSION#" "#PACKAGE_NAME#"
|
||||
.SH NAME
|
||||
\fBMPI_Cart_rank \fP \- Determines process rank in communicator given Cartesian location.
|
||||
|
||||
.SH SYNTAX
|
||||
.ft R
|
||||
.SH C Syntax
|
||||
.nf
|
||||
#include <mpi.h>
|
||||
int MPI_Cart_rank(MPI_Comm \fIcomm\fP, int\fI coords\fP[], int\fI *rank\fP)
|
||||
|
||||
.fi
|
||||
.SH Fortran Syntax
|
||||
.nf
|
||||
USE MPI
|
||||
! or the older form: INCLUDE 'mpif.h'
|
||||
MPI_CART_RANK(\fICOMM, COORDS, RANK, IERROR\fP)
|
||||
INTEGER \fICOMM, COORDS(*), RANK, IERROR\fP
|
||||
|
||||
.fi
|
||||
.SH Fortran 2008 Syntax
|
||||
.nf
|
||||
USE mpi_f08
|
||||
MPI_Cart_rank(\fIcomm\fP, \fIcoords\fP, \fIrank\fP, \fIierror\fP)
|
||||
TYPE(MPI_Comm), INTENT(IN) :: \fIcomm\fP
|
||||
INTEGER, INTENT(IN) :: \fIcoords(*)\fP
|
||||
INTEGER, INTENT(OUT) :: \fIrank\fP
|
||||
INTEGER, OPTIONAL, INTENT(OUT) :: \fIierror\fP
|
||||
|
||||
.fi
|
||||
.SH INPUT PARAMETERS
|
||||
.ft R
|
||||
.TP 1i
|
||||
comm
|
||||
Communicator with Cartesian structure (handle).
|
||||
.TP 1i
|
||||
coords
|
||||
Integer array (of size ndims, which was defined by MPI_Cart_create call) specifying the Cartesian coordinates of a process.
|
||||
|
||||
.SH OUTPUT PARAMETER
|
||||
.ft R
|
||||
.TP 1i
|
||||
rank
|
||||
Rank of specified process (integer).
|
||||
.ft R
|
||||
.TP 1i
|
||||
IERROR
|
||||
Fortran only: Error status (integer).
|
||||
|
||||
.SH DESCRIPTION
|
||||
.ft R
|
||||
For a process group with Cartesian structure, the function MPI_Cart_rank
|
||||
translates the logical process coordinates to process ranks as they are used by the point-to-point routines. For dimension i with periods(i) = true, if the coordinate, coords(i), is out of range, that is, coords(i) < 0 or coords(i) >= dims(i), it is shifted back to the interval 0 =< coords(i) < dims(i) automatically. Out-of-range coordinates are erroneous for nonperiodic dimensions.
|
||||
|
||||
.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
|
||||
.sp
|
||||
MPI_Cart_create
|
72
ompi/mpi/man/man3/MPI_Cart_rank.md
Исполняемый файл
72
ompi/mpi/man/man3/MPI_Cart_rank.md
Исполняемый файл
@ -0,0 +1,72 @@
|
||||
# Name
|
||||
|
||||
`MPI_Cart_rank` - Determines process rank in communicator given
|
||||
Cartesian location.
|
||||
|
||||
# Syntax
|
||||
|
||||
## C Syntax
|
||||
|
||||
```c
|
||||
#include <mpi.h>
|
||||
|
||||
int MPI_Cart_rank(MPI_Comm comm, int coords[], int *rank)
|
||||
```
|
||||
|
||||
## Fortran Syntax
|
||||
|
||||
```fortran
|
||||
USE MPI
|
||||
! or the older form: INCLUDE 'mpif.h'
|
||||
|
||||
MPI_CART_RANK(COMM, COORDS, RANK, IERROR)
|
||||
INTEGER COMM, COORDS(*), RANK, IERROR
|
||||
```
|
||||
|
||||
## Fortran 2008 Syntax
|
||||
|
||||
```fortran
|
||||
USE mpi_f08
|
||||
|
||||
MPI_Cart_rank(comm, coords, rank, ierror)
|
||||
TYPE(MPI_Comm), INTENT(IN) :: comm
|
||||
INTEGER, INTENT(IN) :: coords(*)
|
||||
INTEGER, INTENT(OUT) :: rank
|
||||
INTEGER, OPTIONAL, INTENT(OUT) :: ierror
|
||||
```
|
||||
|
||||
# Input Parameters
|
||||
|
||||
* `comm` : Communicator with Cartesian structure (handle).
|
||||
* `coords` : Integer array (of size ndims, which was defined by `MPI_Cart_create`
|
||||
call) specifying the Cartesian coordinates of a process.
|
||||
|
||||
# Output Parameter
|
||||
|
||||
* `rank` : Rank of specified process (integer).
|
||||
* `IERROR` : Fortran only: Error status (integer).
|
||||
|
||||
# Description
|
||||
|
||||
For a process group with Cartesian structure, the function `MPI_Cart_rank`
|
||||
translates the logical process coordinates to process `rank`s as they are
|
||||
used by the point-to-point routines. For dimension i with periods(i) =
|
||||
true, if the coordinate, `coords(i)`, is out of range, that is, `coords(i)`
|
||||
< 0 or `coords(i)` >= `dims(i)`, it is shifted back to the interval 0 =<
|
||||
`coords(i)` < `dims(i)` automatically. Out-of-range coordinates are
|
||||
erroneous for nonperiodic dimensions.
|
||||
|
||||
# Errors
|
||||
|
||||
Almost all MPI routines return an error value; C routines as the value
|
||||
of the function and Fortran routines in the last argument.
|
||||
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.
|
||||
|
||||
# See Also
|
||||
|
||||
[`MPI_Cart_create`(3)](MPI_Cart_create.html)
|
@ -1,101 +0,0 @@
|
||||
.\" -*- nroff -*-
|
||||
.\" Copyright 2010 Cisco Systems, Inc. All rights reserved.
|
||||
.\" Copyright 2006-2008 Sun Microsystems, Inc.
|
||||
.\" Copyright (c) 1996 Thinking Machines
|
||||
.\" Copyright (c) 2020 Google, LLC. All rights reserved.
|
||||
.\" $COPYRIGHT$
|
||||
.TH MPI_Cart_shift 3 "#OMPI_DATE#" "#PACKAGE_VERSION#" "#PACKAGE_NAME#"
|
||||
.SH NAME
|
||||
\fBMPI_Cart_shift \fP \- Returns the shifted source and destination ranks, given a shift direction and amount.
|
||||
|
||||
.SH SYNTAX
|
||||
.ft R
|
||||
.SH C Syntax
|
||||
.nf
|
||||
#include <mpi.h>
|
||||
int MPI_Cart_shift(MPI_Comm \fIcomm\fP, int\fI direction\fP, int\fI disp\fP,
|
||||
int\fI *rank_source\fP, int\fI *rank_dest\fP)
|
||||
|
||||
.fi
|
||||
.SH Fortran Syntax
|
||||
.nf
|
||||
USE MPI
|
||||
! or the older form: INCLUDE 'mpif.h'
|
||||
MPI_CART_SHIFT(\fICOMM, DIRECTION, DISP, RANK_SOURCE,
|
||||
RANK_DEST, IERROR\fP)
|
||||
INTEGER \fICOMM, DIRECTION, DISP, RANK_SOURCE\fP
|
||||
INTEGER \fIRANK_DEST, IERROR\fP
|
||||
|
||||
.fi
|
||||
.SH Fortran 2008 Syntax
|
||||
.nf
|
||||
USE mpi_f08
|
||||
MPI_Cart_shift(\fIcomm\fP, \fIdirection\fP, \fIdisp\fP, \fIrank_source\fP, \fIrank_dest\fP, \fIierror\fP)
|
||||
TYPE(MPI_Comm), INTENT(IN) :: \fIcomm\fP
|
||||
INTEGER, INTENT(IN) :: \fIdirection\fP, \fIdisp\fP
|
||||
INTEGER, INTENT(OUT) :: \fIrank_source\fP, \fIrank_dest\fP
|
||||
INTEGER, OPTIONAL, INTENT(OUT) :: \fIierror\fP
|
||||
|
||||
.fi
|
||||
.SH INPUT PARAMETERS
|
||||
.ft R
|
||||
.TP 1i
|
||||
comm
|
||||
Communicator with Cartesian structure (handle).
|
||||
.TP 1i
|
||||
direction
|
||||
Coordinate dimension of shift (integer).
|
||||
.TP 1i
|
||||
disp
|
||||
Displacement ( > 0: upward shift, < 0: downward shift) (integer).
|
||||
|
||||
.SH OUTPUT PARAMETERS
|
||||
.ft R
|
||||
.TP 1i
|
||||
rank_source
|
||||
Rank of source process (integer).
|
||||
.TP 1i
|
||||
rank_dest
|
||||
Rank of destination process (integer).
|
||||
.ft R
|
||||
.TP 1i
|
||||
IERROR
|
||||
Fortran only: Error status (integer).
|
||||
|
||||
.SH DESCRIPTION
|
||||
.ft R
|
||||
If the process topology is a Cartesian structure, an MPI_Sendrecv operation is likely to be used along a coordinate direction to perform a shift of data. As input, MPI_Sendrecv takes the rank of a source process for the receive, and the rank of a destination process for the send. If the function MPI_Cart_shift is called for a Cartesian process group, it provides the calling process with the above identifiers, which then can be passed to MPI_Sendrecv. The user specifies the coordinate direction and the size of the step (positive or negative). The function is local.
|
||||
.sp
|
||||
The direction argument indicates the dimension of the shift, i.e., the coordinate whose value is modified by the shift. The coordinates are numbered from 0 to ndims-1, where ndims is the number of dimensions.
|
||||
.sp
|
||||
\fBNote:\fP The direction argument is in the range [0, n-1] for an n-dimensional Cartesian mesh.
|
||||
.sp
|
||||
Depending on the periodicity of the Cartesian group in the specified coordinate direction, MPI_Cart_shift provides the identifiers for a circular or an end-off shift. In the case of an end-off shift, the value MPI_PROC_NULL may be returned in rank_source or rank_dest, indicating that the source or the destination for the shift is out of range.
|
||||
.sp
|
||||
\fBExample:\fP The communicator, comm, has a two-dimensional, periodic, Cartesian topology associated with it. A two-dimensional array of REALs is stored one element per process, in variable A. One wishes to skew this array, by shifting column i (vertically, i.e., along the column) by i steps.
|
||||
.sp
|
||||
.nf
|
||||
\&....
|
||||
C find process rank
|
||||
CALL MPI_COMM_RANK(comm, rank, ierr)
|
||||
C find Cartesian coordinates
|
||||
CALL MPI_CART_COORDS(comm, rank, maxdims, coords,
|
||||
ierr)
|
||||
C compute shift source and destination
|
||||
CALL MPI_CART_SHIFT(comm, 0, coords(2), source,
|
||||
dest, ierr)
|
||||
C skew array
|
||||
CALL MPI_SENDRECV_REPLACE(A, 1, MPI_REAL, dest, 0,
|
||||
source, 0, comm, status,
|
||||
ierr)
|
||||
.fi
|
||||
|
||||
.SH NOTE
|
||||
In Fortran, the dimension indicated by DIRECTION = i has DIMS(i+1) nodes, where DIMS is the array that was used to create the grid. In C, the dimension indicated by direction = i is the dimension specified by dims[i].
|
||||
|
||||
.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.
|
||||
|
112
ompi/mpi/man/man3/MPI_Cart_shift.md
Исполняемый файл
112
ompi/mpi/man/man3/MPI_Cart_shift.md
Исполняемый файл
@ -0,0 +1,112 @@
|
||||
# Name
|
||||
|
||||
`MPI_Cart_shift` - Returns the shifted source and destination ranks,
|
||||
given a shift direction and amount.
|
||||
|
||||
# Syntax
|
||||
|
||||
## C Syntax
|
||||
|
||||
```c
|
||||
#include <mpi.h>
|
||||
|
||||
int MPI_Cart_shift(MPI_Comm comm, int direction, int disp,
|
||||
int *rank_source, int *rank_dest)
|
||||
```
|
||||
|
||||
## Fortran Syntax
|
||||
|
||||
```fortran
|
||||
USE MPI
|
||||
! or the older form: INCLUDE 'mpif.h'
|
||||
|
||||
MPI_CART_SHIFT(COMM, DIRECTION, DISP, RANK_SOURCE,
|
||||
RANK_DEST, IERROR)
|
||||
INTEGER COMM, DIRECTION, DISP, RANK_SOURCE
|
||||
INTEGER RANK_DEST, IERROR
|
||||
```
|
||||
|
||||
## Fortran 2008 Syntax
|
||||
|
||||
```fortran
|
||||
USE mpi_f08
|
||||
|
||||
MPI_Cart_shift(comm, direction, disp, rank_source, rank_dest, ierror)
|
||||
TYPE(MPI_Comm), INTENT(IN) :: comm
|
||||
INTEGER, INTENT(IN) :: direction, disp
|
||||
INTEGER, INTENT(OUT) :: rank_source, rank_dest
|
||||
INTEGER, OPTIONAL, INTENT(OUT) :: ierror
|
||||
```
|
||||
|
||||
# Input Parameters
|
||||
|
||||
* `comm` : Communicator with Cartesian structure (handle).
|
||||
* `direction` : Coordinate dimension of shift (integer).
|
||||
* `disp` : Displacement ( > 0: upward shift, < 0: downward shift) (integer).
|
||||
|
||||
# Output Parameters
|
||||
|
||||
* `rank_source` : Rank of source process (integer).
|
||||
* `rank_dest` : Rank of destination process (integer).
|
||||
* `IERROR` : Fortran only: Error status (integer).
|
||||
|
||||
# Description
|
||||
|
||||
If the process topology is a Cartesian structure, an `MPI_Sendrecv`
|
||||
operation is likely to be used along a coordinate `direction` to perform a
|
||||
shift of data. As input, `MPI_Sendrecv` takes the rank of a source process
|
||||
for the receive, and the rank of a destination process for the send. If
|
||||
the function `MPI_Cart_shift` is called for a Cartesian process group, it
|
||||
provides the calling process with the above identifiers, which then can
|
||||
be passed to `MPI_Sendrecv`. The user specifies the coordinate `direction`
|
||||
and the size of the step (positive or negative). The function is local.
|
||||
|
||||
The `direction` argument indicates the dimension of the shift, i.e., the
|
||||
coordinate whose value is modified by the shift. The coordinates are
|
||||
numbered from 0 to ndims-1, where ndims is the number of dimensions.
|
||||
|
||||
Note: The `direction` argument is in the range [0, n-1] for an
|
||||
n-dimensional Cartesian mesh.
|
||||
|
||||
Depending on the periodicity of the Cartesian group in the specified
|
||||
coordinate `direction`, `MPI_Cart_shift` provides the identifiers for a
|
||||
circular or an end-off shift. In the case of an end-off shift, the value
|
||||
`MPI_PROC_NULL` may be returned in ``rank_source`` or ``rank_dest``, indicating
|
||||
that the source or the destination for the shift is out of range.
|
||||
|
||||
Example: The `comm`unicator, `comm`, has a two-dimensional, periodic,
|
||||
Cartesian topology associated with it. A two-dimensional array of REALs
|
||||
is stored one element per process, in variable A. One wishes to skew
|
||||
this array, by shifting column i (vertically, i.e., along the column) by
|
||||
i steps.
|
||||
|
||||
```fortran
|
||||
! find process rank
|
||||
CALL MPI_COMM_RANK(comm, rank, ierr)
|
||||
! find Cartesian coordinates
|
||||
CALL MPI_CART_COORDS(comm, rank, maxdims, coords, ierr)
|
||||
! compute shift source and destination
|
||||
CALL MPI_CART_SHIFT(comm, 0, coords(2), source, dest, ierr)
|
||||
! skew array
|
||||
CALL MPI_SENDRECV_REPLACE(A, 1, MPI_REAL, dest, 0, source, 0, comm, status,
|
||||
ierr)
|
||||
```
|
||||
|
||||
# Note
|
||||
|
||||
In Fortran, the dimension indicated by DIRECTION = i has DIMS(i+1) nodes,
|
||||
where DIMS is the array that was used to create the grid. In C, the
|
||||
dimension indicated by direction = i is the dimension specified by
|
||||
dims[i].
|
||||
|
||||
# Errors
|
||||
|
||||
Almost all MPI routines return an error value; C routines as the value
|
||||
of the function and Fortran routines in the last argument.
|
||||
|
||||
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.
|
86
ompi/mpi/man/man3/MPI_Cart_sub.md
Обычный файл
86
ompi/mpi/man/man3/MPI_Cart_sub.md
Обычный файл
@ -0,0 +1,86 @@
|
||||
# Name
|
||||
|
||||
`MPI_Cart_sub` - Partitions a communicator into subgroups, which form
|
||||
lower-dimensional Cartesian subgrids.
|
||||
|
||||
# Syntax
|
||||
|
||||
## C Syntax
|
||||
|
||||
```c
|
||||
#include <mpi.h>
|
||||
|
||||
int MPI_Cart_sub(MPI_Comm comm, const int remain_dims[], MPI_Comm *comm_new)
|
||||
```
|
||||
|
||||
## Fortran Syntax
|
||||
|
||||
```fortran
|
||||
USE MPI
|
||||
! or the older form: INCLUDE 'mpif.h'
|
||||
|
||||
MPI_CART_SUB(COMM, REMAIN_DIMS, COMM_NEW, IERROR)
|
||||
INTEGER COMM, COMM_NEW, IERROR
|
||||
LOGICAL REMAIN_DIMS(*)
|
||||
```
|
||||
|
||||
## Fortran 2008 Syntax
|
||||
|
||||
```fortran
|
||||
USE mpi_f08
|
||||
|
||||
MPI_Cart_sub(comm, remain_dims, newcomm, ierror)
|
||||
TYPE(MPI_Comm), INTENT(IN) :: comm
|
||||
LOGICAL, INTENT(IN) :: remain_dims(*)
|
||||
TYPE(MPI_Comm), INTENT(OUT) :: newcomm
|
||||
INTEGER, OPTIONAL, INTENT(OUT) :: ierror
|
||||
```
|
||||
|
||||
# Input Parameters
|
||||
|
||||
* `comm` : Communicator with Cartesian structure (handle).
|
||||
* `remain_dims` : The ith entry of `remain_dims` specifies whether the ith dimension is
|
||||
kept in the subgrid (true) or is dropped (false) (logical vector).
|
||||
|
||||
# Output Parameters
|
||||
|
||||
* `comm_new` : Communicator containing the subgrid that includes the calling
|
||||
process (handle).
|
||||
* `IERROR` : Fortran only: Error status (integer).
|
||||
|
||||
# Description
|
||||
|
||||
If a Cartesian topology has been created with `MPI_Cart_create`, the
|
||||
function `MPI_Cart_sub` can be used to partition the communicator group
|
||||
into subgroups that form lower-dimensional Cartesian subgrids, and to
|
||||
build for each subgroup a communicator with the associated subgrid
|
||||
Cartesian topology. (This function is closely related to
|
||||
`MPI_Comm_split`.)
|
||||
|
||||
Example: Assume that `MPI_Cart_create( ..., comm)` has defined a (2 x
|
||||
3 x 4) grid. Let `remain_dims` = (true, false, true). Then a call to
|
||||
|
||||
MPI_Cart_sub(comm, remain_dims, comm_new)
|
||||
|
||||
will create three communicators, each with eight processes in a 2 x 4
|
||||
Cartesian topology. If `remain_dims = (false, false, true)` then the call
|
||||
to `MPI_Cart_sub(comm, remain_dims, comm_new)` will create six
|
||||
nonoverlapping communicators, each with four processes, in a
|
||||
one-dimensional Cartesian topology.
|
||||
|
||||
# Errors
|
||||
|
||||
Almost all MPI routines return an error value; C routines as the value
|
||||
of the function and Fortran routines in the last argument.
|
||||
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.
|
||||
|
||||
# See Also
|
||||
|
||||
[`MPI_Cart_create`(3)](MPI_Cart_create.html)
|
||||
[`MPI_Comm_split`(3)](MPI_Comm_split.html)
|
||||
|
@ -1,68 +0,0 @@
|
||||
.\" -*- nroff -*-
|
||||
.\" Copyright 2010 Cisco Systems, Inc. All rights reserved.
|
||||
.\" Copyright 2006-2008 Sun Microsystems, Inc.
|
||||
.\" Copyright (c) 1996 Thinking Machines Corporation
|
||||
.\" Copyright (c) 2020 Google, LLC. All rights reserved.
|
||||
.\" $COPYRIGHT$
|
||||
.TH MPI_Cartdim_get 3 "#OMPI_DATE#" "#PACKAGE_VERSION#" "#PACKAGE_NAME#"
|
||||
.SH NAME
|
||||
\fBMPI_Cartdim_get \fP \- Retrieves Cartesian topology information associated with a communicator.
|
||||
|
||||
.SH SYNTAX
|
||||
.ft R
|
||||
.SH C Syntax
|
||||
.nf
|
||||
#include <mpi.h>
|
||||
int MPI_Cartdim_get(MPI_Comm\fI comm\fP, int\fI *ndims\fP)
|
||||
|
||||
.fi
|
||||
.SH Fortran Syntax
|
||||
.nf
|
||||
USE MPI
|
||||
! or the older form: INCLUDE 'mpif.h'
|
||||
MPI_CARTDIM_GET(\fICOMM, NDIMS, IERROR\fP)
|
||||
INTEGER \fICOMM, NDIMS, IERROR\fP
|
||||
|
||||
.fi
|
||||
.SH Fortran 2008 Syntax
|
||||
.nf
|
||||
USE mpi_f08
|
||||
MPI_Cartdim_get(\fIcomm\fP, \fIndims\fP, \fIierror\fP)
|
||||
TYPE(MPI_Comm), INTENT(IN) :: \fIcomm\fP
|
||||
INTEGER, INTENT(OUT) :: \fIndims\fP
|
||||
INTEGER, OPTIONAL, INTENT(OUT) :: \fIierror\fP
|
||||
|
||||
.fi
|
||||
.SH INPUT PARAMETER
|
||||
.ft R
|
||||
.TP 1i
|
||||
comm
|
||||
Communicator with Cartesian structure (handle).
|
||||
|
||||
.SH OUTPUT PARAMETERS
|
||||
.ft R
|
||||
.TP 1i
|
||||
ndims
|
||||
Number of dimensions of the Cartesian structure (integer).
|
||||
.ft R
|
||||
.TP 1i
|
||||
IERROR
|
||||
Fortran only: Error status (integer).
|
||||
|
||||
.SH DESCRIPTION
|
||||
.ft R
|
||||
MPI_Cartdim_get returns the number of dimensions of the Cartesian structure.
|
||||
|
||||
.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
|
||||
.ft R
|
||||
.sp
|
||||
.nf
|
||||
MPI_Cart_get
|
||||
MPI_Cart_create
|
||||
|
66
ompi/mpi/man/man3/MPI_Cartdim_get.md
Исполняемый файл
66
ompi/mpi/man/man3/MPI_Cartdim_get.md
Исполняемый файл
@ -0,0 +1,66 @@
|
||||
# Name
|
||||
|
||||
`MPI_Cartdim_get` - Retrieves Cartesian topology information
|
||||
associated with a communicator.
|
||||
|
||||
# Syntax
|
||||
|
||||
## C Syntax
|
||||
|
||||
```c
|
||||
#include <mpi.h>
|
||||
|
||||
int MPI_Cartdim_get(MPI_Comm comm, int *ndims)
|
||||
```
|
||||
|
||||
## Fortran Syntax
|
||||
|
||||
```fortran
|
||||
USE MPI
|
||||
! or the older form: INCLUDE 'mpif.h'
|
||||
|
||||
MPI_CARTDIM_GET(COMM, NDIMS, IERROR)
|
||||
INTEGER COMM, NDIMS, IERROR
|
||||
```
|
||||
|
||||
## Fortran 2008 Syntax
|
||||
|
||||
```fortran
|
||||
USE mpi_f08
|
||||
|
||||
MPI_Cartdim_get(comm, ndims, ierror)
|
||||
TYPE(MPI_Comm), INTENT(IN) :: comm
|
||||
INTEGER, INTENT(OUT) :: ndims
|
||||
INTEGER, OPTIONAL, INTENT(OUT) :: ierror
|
||||
```
|
||||
|
||||
|
||||
# Input Parameter
|
||||
|
||||
* `comm` : Communicator with Cartesian structure (handle).
|
||||
|
||||
# Output Parameters
|
||||
|
||||
* `ndims` : Number of dimensions of the Cartesian structure (integer).
|
||||
* `IERROR` : Fortran only: Error status (integer).
|
||||
|
||||
# Description
|
||||
|
||||
`MPI_Cartdim_get` returns the number of dimensions of the Cartesian
|
||||
structure.
|
||||
|
||||
# Errors
|
||||
|
||||
Almost all MPI routines return an error value; C routines as the value
|
||||
of the function and Fortran routines in the last argument.
|
||||
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.
|
||||
|
||||
# See Also
|
||||
|
||||
[`MPI_Cart_get`(3)](MPI_Cart_get.html)
|
||||
[`MPI_Cart_create`(3)](MPI_Cart_create.html)
|
@ -1,58 +0,0 @@
|
||||
.\" -*- nroff -*-
|
||||
.\" Copyright 2013 Los Alamos National Security, LLC. All rights reserved.
|
||||
.\" Copyright 2010 Cisco Systems, Inc. All rights reserved.
|
||||
.\" Copyright 2006-2008 Sun Microsystems, Inc.
|
||||
.\" Copyright (c) 1996 Thinking Machines Corporation
|
||||
.\" Copyright (c) 2020 Google, LLC. All rights reserved.
|
||||
.\" $COPYRIGHT$
|
||||
.TH MPI_Close_port 3 "#OMPI_DATE#" "#PACKAGE_VERSION#" "#PACKAGE_NAME#"
|
||||
.SH NAME
|
||||
\fBMPI_Close_port \fP \- Releases the specified network address.
|
||||
|
||||
.SH SYNTAX
|
||||
.ft R
|
||||
.SH C Syntax
|
||||
.nf
|
||||
#include <mpi.h>
|
||||
int MPI_Close_port(const char *\fIport_name\fP)
|
||||
|
||||
.fi
|
||||
.SH Fortran Syntax
|
||||
.nf
|
||||
USE MPI
|
||||
! or the older form: INCLUDE 'mpif.h'
|
||||
MPI_CLOSE_PORT(\fIPORT_NAME, IERROR\fP)
|
||||
CHARACTER*(*) \fIPORT_NAME\fP
|
||||
INTEGER \fIIERROR\fP
|
||||
|
||||
.fi
|
||||
.SH Fortran 2008 Syntax
|
||||
.nf
|
||||
USE mpi_f08
|
||||
MPI_Close_port(\fIport_name\fP, \fIierror\fP)
|
||||
CHARACTER(LEN=*), INTENT(IN) :: \fIport_name\fP
|
||||
INTEGER, OPTIONAL, INTENT(OUT) :: \fIierror\fP
|
||||
|
||||
.fi
|
||||
.SH INPUT PARAMETER
|
||||
.ft R
|
||||
.TP 1i
|
||||
port_name
|
||||
A port (string).
|
||||
|
||||
.SH OUTPUT PARAMETER
|
||||
.ft R
|
||||
.TP 1i
|
||||
IERROR
|
||||
Fortran only: Error status (integer).
|
||||
|
||||
.SH DESCRIPTION
|
||||
.ft R
|
||||
MPI_Close_port releases the network address represented by \fIport_name\fP.
|
||||
|
||||
.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.
|
||||
|
58
ompi/mpi/man/man3/MPI_Close_port.md
Исполняемый файл
58
ompi/mpi/man/man3/MPI_Close_port.md
Исполняемый файл
@ -0,0 +1,58 @@
|
||||
# Name
|
||||
|
||||
`MPI_Close_port` - Releases the specified network address.
|
||||
|
||||
# Syntax
|
||||
|
||||
## C Syntax
|
||||
|
||||
```c
|
||||
#include <mpi.h>
|
||||
|
||||
int MPI_Close_port(const char *port_name)
|
||||
```
|
||||
|
||||
## Fortran Syntax
|
||||
|
||||
```fortran
|
||||
USE MPI
|
||||
! or the older form: INCLUDE 'mpif.h'
|
||||
|
||||
MPI_CLOSE_PORT(PORT_NAME, IERROR)
|
||||
CHARACTER*(*) PORT_NAME
|
||||
INTEGER IERROR
|
||||
```
|
||||
|
||||
## Fortran 2008 Syntax
|
||||
|
||||
```fortran
|
||||
USE mpi_f08
|
||||
|
||||
MPI_Close_port(port_name, ierror)
|
||||
CHARACTER(LEN=*), INTENT(IN) :: port_name
|
||||
INTEGER, OPTIONAL, INTENT(OUT) :: ierror
|
||||
```
|
||||
|
||||
|
||||
# Input Parameter
|
||||
|
||||
* `port_name` : A port (string).
|
||||
|
||||
# Output Parameter
|
||||
|
||||
* `IERROR` : Fortran only: Error status (integer).
|
||||
|
||||
# Description
|
||||
|
||||
`MPI_Close_port` releases the network address represented by `port_name`.
|
||||
|
||||
# Errors
|
||||
|
||||
Almost all MPI routines return an error value; C routines as the value
|
||||
of the function and Fortran routines in the last argument.
|
||||
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.
|
@ -29,6 +29,16 @@ MD_FILES = \
|
||||
MPI_Bsend_init.md \
|
||||
MPI_Buffer_attach.md \
|
||||
MPI_Buffer_detach.md \
|
||||
MPI_Cancel.md \
|
||||
MPI_Cart_coords.md \
|
||||
MPI_Cart_create.md \
|
||||
MPI_Cart_get.md \
|
||||
MPI_Cart_map.md \
|
||||
MPI_Cart_rank.md \
|
||||
MPI_Cart_shift.md \
|
||||
MPI_Close_port.md \
|
||||
MPI_Cart_sub.md \
|
||||
MPI_Cartdim_get.md \
|
||||
MPI_T_init_thread.3.md \
|
||||
MPI_Status_f2c.3.md \
|
||||
MPI_Status_f082c.3.md \
|
||||
@ -69,16 +79,6 @@ TEMPLATE_FILES = \
|
||||
MPI_Attr_put.3in \
|
||||
MPI_Ibarrier.3in \
|
||||
MPI_Ibcast.3in \
|
||||
MPI_Cancel.3in \
|
||||
MPI_Cart_coords.3in \
|
||||
MPI_Cart_create.3in \
|
||||
MPI_Cartdim_get.3in \
|
||||
MPI_Cart_get.3in \
|
||||
MPI_Cart_map.3in \
|
||||
MPI_Cart_rank.3in \
|
||||
MPI_Cart_shift.3in \
|
||||
MPI_Cart_sub.3in \
|
||||
MPI_Close_port.3in \
|
||||
MPI_Comm_accept.3in \
|
||||
MPI_Comm_c2f.3in \
|
||||
MPI_Comm_call_errhandler.3in \
|
||||
|
Загрузка…
Ссылка в новой задаче
Block a user