NAME¶
MPI_Comm_rank - Determines the rank of the calling process in the
communicator.
SYNTAX¶
C Syntax¶
#include <mpi.h>
int MPI_Comm_rank(MPI_Comm comm, int *rank)
Fortran Syntax¶
INCLUDE 'mpif.h'
MPI_COMM_RANK( COMM, RANK, IERROR)
INTEGER COMM, RANK, IERROR
C++ Syntax¶
#include <mpi.h>
int Comm::Get_rank() const
- comm
- Communicator (handle).
OUTPUT PARAMETERS¶
- rank
- Rank of the calling process in group of comm
(integer).
- IERROR
- Fortran only: Error status (integer).
DESCRIPTION¶
This function gives the rank of the process in the particular communicator's
group. It is equivalent to accessing the communicator's group with
MPI_Comm_group, computing the rank using MPI_Group_rank, and then freeing the
temporary group via MPI_Group_free.
Many programs will be written with the master-slave model, where one process
(such as the rank-zero process) will play a supervisory role, and the other
processes will serve as compute nodes. In this framework, MPI_Comm_size and
MPI_Comm_rank are useful for determining the roles of the various processes of
a communicator.
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++ functions 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_Comm_group
MPI_Comm_size
MPI_Comm_compare