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 (non-negative integer) |
IN blocklength | number of elements in each block (non-negative 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 (non-negative integer) |
IN array_of_blocklengths | number of elements in each block (array of non-negative 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) (non-negative 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 non-negative 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 that of the new function,
except for the function name and a different behavior in the
C/Fortran language interoperability, see Section Attributes
on page Attributes
.
The language bindings are modified.
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)
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)
SUBROUTINE DELETE_FUNCTION(COMM, KEYVAL, ATTRIBUTE_VAL, EXTRA_STATE, IERR)
int MPI_Keyval_free(int *keyval)
MPI_KEYVAL_FREE(KEYVAL, IERROR)
int MPI_Attr_put(MPI_Comm comm, int keyval, void* attribute_val)
MPI_ATTR_PUT(COMM, KEYVAL, ATTRIBUTE_VAL, IERROR)
int MPI_Attr_get(MPI_Comm comm, int keyval, void *attribute_val, int *flag)
MPI_ATTR_GET(COMM, KEYVAL, ATTRIBUTE_VAL, FLAG, IERROR)
int MPI_Attr_delete(MPI_Comm comm, int keyval)
MPI_ATTR_DELETE(COMM, KEYVAL, IERROR)
int MPI_Errhandler_create(MPI_Handler_function *function, MPI_Errhandler *errhandler)
MPI_ERRHANDLER_CREATE(FUNCTION, ERRHANDLER, IERROR)
In the C language,
the user routine should be a C function of type MPI_Handler_function,
which is defined as:
2.2
int MPI_Errhandler_set(MPI_Comm comm, MPI_Errhandler errhandler)
MPI_ERRHANDLER_SET(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.
int MPI_Errhandler_get(MPI_Comm comm, MPI_Errhandler *errhandler)
MPI_ERRHANDLER_GET(COMM, ERRHANDLER, IERROR)
Returns in errhandler (a handle to) the error handler that is
currently
associated with communicator comm.
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
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)
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:
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)
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
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
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)
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)
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.
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_CODE
The 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)
INTEGER COMM, ERRHANDLER, IERROR
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)
INTEGER COMM, ERRHANDLER, IERROR
Up: Contents
Next: Deprecated since MPI-2.2
Previous: Deprecated Functions
Return to MPI-2.2 Standard Index
Return to MPI Forum Home Page
(Unofficial) MPI-2.2 of September 4, 2009
HTML Generated on September 10, 2009