The following function is deprecated and is superseded by MPI_TYPE_CREATE_HVECTOR in MPI-2.0. The language independent definition and the C binding of the deprecated function is the same as of the new function, except of the function name. Only the Fortran language binding is different.
MPI_TYPE_HVECTOR( count, blocklength, stride, oldtype, newtype) | |
IN count | number of blocks (nonnegative integer) |
IN blocklength | number of elements in each block (nonnegative integer) |
IN stride | number of bytes between start of each block (integer) |
IN oldtype | old datatype (handle) |
OUT newtype | new datatype (handle) |
int MPI_Type_hvector(int count, int blocklength, MPI_Aint stride, MPI_Datatype oldtype, MPI_Datatype *newtype)
MPI_TYPE_HVECTOR(COUNT, BLOCKLENGTH, STRIDE, OLDTYPE, NEWTYPE, IERROR)
INTEGER COUNT, BLOCKLENGTH, STRIDE, OLDTYPE, NEWTYPE, IERROR
The following function is deprecated and is superseded by MPI_TYPE_CREATE_HINDEXED in MPI-2.0.
The language independent definition and the C binding
of the deprecated function is the same as of the new function,
except of the function name.
Only the Fortran language binding is different.
MPI_TYPE_HINDEXED( count, array_of_blocklengths, array_of_displacements, oldtype, newtype) | |
IN count | number of blocks -- also number of entries in
array_of_displacements and array_of_blocklengths (nonnegative integer) |
IN array_of_blocklengths | number of elements in each block (array of nonnegative integers) |
IN array_of_displacements | byte displacement of each block (array of integer) |
IN oldtype | old datatype (handle) |
OUT newtype | new datatype (handle) |
int MPI_Type_hindexed(int count, int *array_of_blocklengths, MPI_Aint *array_of_displacements, MPI_Datatype oldtype, MPI_Datatype *newtype)
MPI_TYPE_HINDEXED(COUNT, ARRAY_OF_BLOCKLENGTHS, ARRAY_OF_DISPLACEMENTS, OLDTYPE, NEWTYPE, IERROR)
INTEGER COUNT, ARRAY_OF_BLOCKLENGTHS(*), ARRAY_OF_DISPLACEMENTS(*), OLDTYPE, NEWTYPE, IERROR
The following function is deprecated and is superseded by MPI_TYPE_CREATE_STRUCT in MPI-2.0.
The language independent definition and the C binding
of the deprecated function is the same as of the new function,
except of the function name.
Only the Fortran language binding is different.
MPI_TYPE_STRUCT(count, array_of_blocklengths, array_of_displacements, array_of_types, newtype) | |
IN count | number of blocks (integer) (nonnegative integer) -- also number of entries in arrays array_of_types, array_of_displacements and array_of_blocklengths |
IN array_of_blocklength | number of elements in each block (array of nonnegative integer) |
IN array_of_displacements | byte displacement of each block (array of integer) |
IN array_of_types | type of elements in each block (array of handles to datatype objects) |
OUT newtype | new datatype (handle) |
int MPI_Type_struct(int count, int *array_of_blocklengths, MPI_Aint *array_of_displacements, MPI_Datatype *array_of_types, MPI_Datatype *newtype)
MPI_TYPE_STRUCT(COUNT, ARRAY_OF_BLOCKLENGTHS, ARRAY_OF_DISPLACEMENTS, ARRAY_OF_TYPES, NEWTYPE, IERROR)
INTEGER COUNT, ARRAY_OF_BLOCKLENGTHS(*), ARRAY_OF_DISPLACEMENTS(*), ARRAY_OF_TYPES(*), NEWTYPE, IERROR
The following function is deprecated and is superseded by MPI_GET_ADDRESS in MPI-2.0.
The language independent definition and the C binding
of the deprecated function is the same as of the new function,
except of the function name.
Only the Fortran language binding is different.
MPI_ADDRESS(location, address) | |
IN location | location in caller memory (choice) |
OUT address | address of location (integer) |
int MPI_Address(void* location, MPI_Aint *address)
MPI_ADDRESS(LOCATION, ADDRESS, IERROR)
<type> LOCATION(*)
INTEGER ADDRESS, IERROR
The following functions are deprecated and are superseded by MPI_TYPE_GET_EXTENT in MPI-2.0.
MPI_TYPE_EXTENT(datatype, extent) | |
IN datatype | datatype (handle) |
OUT extent | datatype extent (integer) |
int MPI_Type_extent(MPI_Datatype datatype, MPI_Aint *extent)
MPI_TYPE_EXTENT(DATATYPE, EXTENT, IERROR)
INTEGER DATATYPE, EXTENT, IERROR
Returns the extent of a datatype, where extent is as defined on page Lower-Bound and Upper-Bound Markers . The two functions below can be used for finding the lower bound and the upper bound of a datatype.
MPI_TYPE_LB( datatype, displacement) | |
IN datatype | datatype (handle) |
OUT displacement | displacement of lower bound from origin, in bytes (integer) |
int MPI_Type_lb(MPI_Datatype datatype, MPI_Aint* displacement)
MPI_TYPE_LB( DATATYPE, DISPLACEMENT, IERROR)
INTEGER DATATYPE, DISPLACEMENT, IERROR
MPI_TYPE_UB( datatype, displacement) | |
IN datatype | datatype (handle) |
OUT displacement | displacement of upper bound from origin, in bytes (integer) |
int MPI_Type_ub(MPI_Datatype datatype, MPI_Aint* displacement)
MPI_TYPE_UB( DATATYPE, DISPLACEMENT, IERROR)
INTEGER DATATYPE, DISPLACEMENT, IERROR
The following function is deprecated and is superseded by MPI_COMM_CREATE_KEYVAL in MPI-2.0. The language independent definition of the deprecated function is the same as of the new function, except of the function name. The language bindings are modified.
MPI_KEYVAL_CREATE(copy_fn, delete_fn, keyval, extra_state) | |
IN copy_fn | Copy callback function for keyval |
IN delete_fn | Delete callback function for keyval |
OUT keyval | key value for future access (integer) |
IN extra_state | Extra state for callback functions |
int MPI_Keyval_create(MPI_Copy_function *copy_fn, MPI_Delete_function *delete_fn, int *keyval, void* extra_state)
MPI_KEYVAL_CREATE(COPY_FN, DELETE_FN, KEYVAL, EXTRA_STATE, IERROR)
EXTERNAL COPY_FN, DELETE_FN
INTEGER KEYVAL, EXTRA_STATE, IERROR
The copy_fn function is invoked when a communicator is
duplicated by MPI_COMM_DUP. copy_fn should be
of type MPI_Copy_function, which is defined as follows:
typedef int MPI_Copy_function(MPI_Comm oldcomm, int keyval, void *extra_state, void *attribute_val_in, void *attribute_val_out, int *flag)
A Fortran declaration for such a function is as follows:
SUBROUTINE COPY_FUNCTION(OLDCOMM, KEYVAL, EXTRA_STATE, ATTRIBUTE_VAL_IN, ATTRIBUTE_VAL_OUT, FLAG, IERR)
INTEGER OLDCOMM, KEYVAL, EXTRA_STATE, ATTRIBUTE_VAL_IN, ATTRIBUTE_VAL_OUT, IERR
LOGICAL FLAG
copy_fn may be specified as
MPI_NULL_COPY_FN or
MPI_DUP_FN
from either C or FORTRAN;
MPI_NULL_COPY_FN
is a function that does nothing other than returning flag = 0
and MPI_SUCCESS.
MPI_DUP_FN is a simple-minded
copy function that sets flag = 1,
returns the value of
attribute_val_in in attribute_val_out, and
returns MPI_SUCCESS.
Note that MPI_NULL_COPY_FN
and MPI_DUP_FN are also deprecated.
Analogous to copy_fn is a callback deletion function, defined
as follows. The delete_fn function is invoked when a communicator is
deleted by MPI_COMM_FREE or when a call is made explicitly
to MPI_ATTR_DELETE. delete_fn should be
of type MPI_Delete_function, which is defined as follows:
typedef int MPI_Delete_function(MPI_Comm comm, int keyval, void *attribute_val, void *extra_state);A Fortran declaration for such a function is as follows:
SUBROUTINE DELETE_FUNCTION(COMM, KEYVAL, ATTRIBUTE_VAL, EXTRA_STATE, IERR)
INTEGER COMM, KEYVAL, ATTRIBUTE_VAL, EXTRA_STATE, IERR
delete_fn may be specified as
MPI_NULL_DELETE_FN from either C or FORTRAN;
MPI_NULL_DELETE_FN is a function that does nothing, other
than returning MPI_SUCCESS.
Note that MPI_NULL_DELETE_FN is also deprecated.
The following function is deprecated and is superseded by MPI_COMM_FREE_KEYVAL in MPI-2.0.
The language independent definition
of the deprecated function is the same as of the new function,
except of the function name.
The language bindings are modified.
MPI_KEYVAL_FREE(keyval) | |
INOUT keyval | Frees the integer key value (integer) |
int MPI_Keyval_free(int *keyval)
MPI_KEYVAL_FREE(KEYVAL, IERROR)
INTEGER KEYVAL, IERROR
The following function is deprecated and is superseded by MPI_COMM_SET_ATTR in MPI-2.0.
The language independent definition
of the deprecated function is the same as of the new function,
except of the function name.
The language bindings are modified.
MPI_ATTR_PUT(comm, keyval, attribute_val) | |
INOUT comm | communicator to which attribute will be attached (handle) |
IN keyval | key value, as returned by MPI_KEYVAL_CREATE (integer) |
IN attribute_val | attribute value |
int MPI_Attr_put(MPI_Comm comm, int keyval, void* attribute_val)
MPI_ATTR_PUT(COMM, KEYVAL, ATTRIBUTE_VAL, IERROR)
INTEGER COMM, KEYVAL, ATTRIBUTE_VAL, IERROR
The following function is deprecated and is superseded by MPI_COMM_GET_ATTR in MPI-2.0.
The language independent definition
of the deprecated function is the same as of the new function,
except of the function name.
The language bindings are modified.
MPI_ATTR_GET(comm, keyval, attribute_val, flag) | |
IN comm | communicator to which attribute is attached (handle) |
IN keyval | key value (integer) |
OUT attribute_val | attribute value, unless flag = false |
OUT flag | true if an attribute value was extracted; false if no attribute is associated with the key |
int MPI_Attr_get(MPI_Comm comm, int keyval, void *attribute_val, int *flag)
MPI_ATTR_GET(COMM, KEYVAL, ATTRIBUTE_VAL, FLAG, IERROR)
INTEGER COMM, KEYVAL, ATTRIBUTE_VAL, IERROR
LOGICAL FLAG
The following function is deprecated and is superseded by MPI_COMM_DELETE_ATTR in MPI-2.0.
The language independent definition
of the deprecated function is the same as of the new function,
except of the function name.
The language bindings are modified.
MPI_ATTR_DELETE(comm, keyval) | |
INOUT comm | communicator to which attribute is attached (handle) |
IN keyval | The key value of the deleted attribute (integer) |
int MPI_Attr_delete(MPI_Comm comm, int keyval)
MPI_ATTR_DELETE(COMM, KEYVAL, IERROR)
INTEGER COMM, KEYVAL, IERROR
The following function is deprecated and is superseded by MPI_COMM_CREATE_ERRHANDLER in MPI-2.0.
The language independent definition
of the deprecated function is the same as of the new function,
except of the function name.
The language bindings are modified.
MPI_ERRHANDLER_CREATE( function, errhandler ) | |
IN function | user defined error handling procedure |
OUT errhandler | MPI error handler (handle) |
int MPI_Errhandler_create(MPI_Handler_function *function, MPI_Errhandler *errhandler)
MPI_ERRHANDLER_CREATE(FUNCTION, ERRHANDLER, IERROR)
EXTERNAL FUNCTION
INTEGER ERRHANDLER, IERROR
Register the user routine function for use as an MPI
exception handler. Returns in errhandler a handle to the registered
exception handler.
In the C language, the user routine should be a C function of type MPI_Handler_function, which is defined as:
typedef void (MPI_Handler_function)(MPI_Comm *, int *, ...);The first argument is the communicator in use, the second is the error code to be returned. In the Fortran language, the user routine should be of the form:
SUBROUTINE HANDLER_FUNCTION(COMM, ERROR_CODE, .....) INTEGER COMM, ERROR_CODEThe following function is deprecated and is superseded by MPI_COMM_SET_ERRHANDLER in MPI-2.0. The language independent definition of the deprecated function is the same as of the new function, except of the function name. The language bindings are modified.
MPI_ERRHANDLER_SET( comm, errhandler ) | |
INOUT comm | communicator to set the error handler for (handle) |
IN errhandler | new MPI error handler for communicator (handle) |
int MPI_Errhandler_set(MPI_Comm comm, MPI_Errhandler errhandler)
MPI_ERRHANDLER_SET(COMM, ERRHANDLER, IERROR)
INTEGER COMM, ERRHANDLER, IERROR
Associates the new error handler errorhandler with communicator comm at the calling process. Note that an error handler is always associated with the communicator. The following function is deprecated and is superseded by MPI_COMM_GET_ERRHANDLER in MPI-2.0. The language independent definition of the deprecated function is the same as of the new function, except of the function name. The language bindings are modified.
MPI_ERRHANDLER_GET( comm, errhandler ) | |
IN comm | communicator to get the error handler from (handle) |
OUT errhandler | MPI error handler currently associated with communicator (handle) |
int MPI_Errhandler_get(MPI_Comm comm, MPI_Errhandler *errhandler)
MPI_ERRHANDLER_GET(COMM, ERRHANDLER, IERROR)
INTEGER COMM, ERRHANDLER, IERROR
Returns in errhandler (a handle to) the error handler that is currently associated with communicator comm.