MPIX_Nodecart_create

Create a Cartesian communicator, using information about which nodes are on the same process.

Synopsis

int MPIX_Nodecart_create(MPI_Comm comm_old, int ndims, const int dims[],
             const int periods[], int reorder, MPI_Comm *comm_cart)

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)

Notes

Like MPI_Cart_create, the values for dims must be provided on input. An option to consider is to allow zero values for elements of dims, and then let this routine choose the dimensions to best fit the underlying physical hardware.

The routine MPIX_Comm_dims_create may be used to determine good values for dims.

The control variable cvar_nodecart_verbose may be set to a positive value to cause output to be generated about this routine's operation.