dwww Home | Manual pages | Find package

MPI_Cart_map(3)                    Open MPI                    MPI_Cart_map(3)

NAME
       MPI_Cart_map  -  Maps process to Cartesian topology information.

SYNTAX
C Syntax
       #include <mpi.h>
       int MPI_Cart_map(MPI_Comm comm, int ndims, const int dims[],
            const int periods[], int *newrank)

Fortran Syntax
       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
       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

C++ Syntax
       #include <mpi.h>
       int Cartcomm::Map(int ndims, const int dims[],
            const bool periods[]) const

INPUT PARAMETERS
       comm      Input communicator (handle).

       ndims     Number of dimensions of Cartesian structure (integer).

       dims      Integer  array  of  size  ndims specifying the number of pro-
                 cesses in each coordinate direction.

       periods   Logical array of size ndims specifying the periodicity speci-
                 fication in each coordinate direction.

OUTPUT PARAMETERS
       newrank   Reordered rank of the calling process; MPI_UNDEFINED if call-
                 ing 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 di-
       rectly, unless he or she is creating additional virtual topology  capa-
       bility 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. C++ func-
       tions do not return errors. If the default  error  handler  is  set  to
       MPI::ERRORS_THROW_EXCEPTIONS, then on error the C++ exception mechanism
       will be used to throw an MPI::Exception object.

       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

4.1.2                            Nov 24, 2021                  MPI_Cart_map(3)

Generated by dwww version 1.14 on Fri Jan 24 06:19:30 CET 2025.