Name
HPL_grid_init Create a process grid.
Synopsis
#include "hpl.h"
int
HPL_grid_init(
MPI_Comm
COMM
,
const HPL_T_ORDER
ORDER
,
const int
NPROW
,
const int
NPCOL
,
HPL_T_grid *
GRID
);
Description
HPL_grid_init
creates a NPROW x NPCOL process grid using column- or
row-major ordering from an initial collection of processes identified
by an MPI communicator. Successful completion is indicated by the
returned error code MPI_SUCCESS. Other error codes depend on the MPI
implementation. The coordinates of processes that are not part of the
grid are set to values outside of [0..NPROW) x [0..NPCOL).
Arguments
COMM (global/local input) MPI_Comm
On entry, COMM is the MPI communicator identifying the
initial collection of processes out of which the grid is
formed.
ORDER (global input) const HPL_T_ORDER
On entry, ORDER specifies how the processes should be ordered
in the grid as follows:
ORDER = HPL_ROW_MAJOR row-major ordering;
ORDER = HPL_COLUMN_MAJOR column-major ordering;
NPROW (global input) const int
On entry, NPROW specifies the number of process rows in the
grid to be created. NPROW must be at least one.
NPCOL (global input) const int
On entry, NPCOL specifies the number of process columns in
the grid to be created. NPCOL must be at least one.
GRID (local input/output) HPL_T_grid *
On entry, GRID points to the data structure containing the
process grid information to be initialized.
See Also
HPL_pnum,
HPL_grid_info,
HPL_grid_exit.