MPI_Type_create_darray
Creates a datatype corresponding to a distributed, multidimensional arraySynopsis
#include "mpi.h" int MPI_Type_create_darray(int size, int rank, int ndims, int *array_of_gsizes, int *array_of_distribs, int *array_of_dargs, int *array_of_psizes, int order, MPI_Datatype oldtype, MPI_Datatype *newtype)
Input Parameters
size | size of process group (positive integer)
| |
rank | rank in process group (nonnegative integer)
| |
ndims | number of array dimensions as well as process grid dimensions (positive integer)
| |
array_of_gsizes | number of elements of type oldtype in each dimension of global array (array of positive integers)
| |
array_of_distribs | distribution of array in each dimension (array of state)
| |
array_of_dargs | distribution argument in each dimension (array of positive integers)
| |
array_of_psizes | size of process grid in each dimension (array of positive integers)
| |
order | array storage order flag (state)
| |
oldtype | old datatype (handle)
|
Output Parameters
- newtype
- new datatype (handle)
Notes for Fortran
All MPI routines in Fortran (except for MPI_WTIME and MPI_WTICK) have an additional argument ierr at the end of the argument list. ierr is an integer and has the same meaning as the return value of the routine in C. In Fortran, MPI routines are subroutines, and are invoked with the call statement.All MPI objects (e.g., MPI_Datatype, MPI_Comm) are of type INTEGER in Fortran.
Location:darray.c