MPI_Constants - Defines constants
STANDARDS
This release implements the MPI 1.2 standard, as
documented by the MPI Forum in the spring 1997 release of
MPI: A Message Passing Interface Standard.
DESCRIPTION
The MPI_Constants routine defines constants of the
following types:
* Communicators
* Groups
* Results of compare operations
* Collective operations
* Permanent key values
* Null objects
* Predefined constants
* Topology types
* MPI status
* Special MPI types and functions
Communicators
The following communicator constants are of type MPI_Comm
in C and type integer in Fortran:
MPI_COMM_WORLD Specifies a constant that contains all
of the processes
MPI_COMM_SELF Specifies a constant that contains
only the calling process
Groups
The following group constant is of type MPI_Group in C and
type integer in Fortran:
MPI_GROUP_EMPTY Specifies a group that contains no
members
Compare Operation Results
The following constants specify results of compare
operations:
MPI_IDENT The groups are identical.
for MPI_Comm_compare(3)).
MPI_SIMILAR The groups contain the same members,
but in a different order.
MPI_UNEQUAL The groups are not equal.
Collective Operations
The collective combination operations (MPI_Reduce(3),
MPI_Allreduce(3), MPI_Reduce_scatter(3), and MPI_Scan(3))
take a combination operation. This combination operation
is of type MPI_Op in C and of type integer in Fortran.
The predefined operations are as follows:
MPI_MAX Returns the maximum value
MPI_MIN Returns the minumum value
MPI_SUM Returns the sum
MPI_PROD Returns the product
MPI_LAND Returns the logical AND
MPI_BAND Returns the bitwise AND
MPI_LOR Returns the logical OR
MPI_BOR Returns the bitwise OR
MPI_LXOR Returns the logical exclusive OR
MPI_BXOR Returns the bitwise exclusive OR
MPI_MINLOC Returns the minimum value and the
location (actually, it returns the
value of the second element of the
structure where the minimum of the
first element is found)
MPI_MAXLOC Returns the maximum value and the
location
Permanent Key Values
The types of the following permanent key value constants
are the same in C and Fortran:
MPI_TAG_UB Specifies largest tag value
MPI_HOST Specifies the rank of the process
that is host, if any
MPI_IO Specifies the rank of the process
MPI_WTIME_IS_GLOBAL Has a value of 1 if MPI_Wtime(3)
is globally synchronized
Null Objects
The following constants specify null objects:
MPI_COMM_NULL Specifies a null communicator
MPI_OP_NULL Specifies a null operation
MPI_GROUP_NULL Specifies a null group
MPI_DATATYPE_NULL Specifies a null data type
MPI_REQUEST_NULL Specifies a null request
MPI_ERRHANDLER_NULL Specifies a null error handler
Predefined Constants
The following constants are predefined:
MPI_MAX_PROCESSOR_NAME Specifies the maximum length
of the name returned by
MPI_Get_processor_name(3)
MPI_MAX_ERROR_STRING Specifies the maximum length
of the string returned by
MPI_Error_string(3)
MPI_UNDEFINED Used by many routines to
indicate an undefined or
unknown integer value
MPI_UNDEFINED_RANK Specifies an unknown rank
MPI_KEYVAL_INVALID Provides a special key value
that can be used to detect
uninitialized key values
MPI_BSEND_OVERHEAD Specifies a value that can
be added to the size of a
MPI_Bsend(3) buffer for each
outstanding message
MPI_PROC_NULL Specifies a rank that can be
used to send or receive from
no-one
MPI_ANY_SOURCE Indicates, in a receive, to
accept a message from anyone
MPI_ANY_TAG Indicates, in a receive, to
tag value
MPI_BOTTOM Can be used to indicate the
bottom of the address space
Topology Types
The following constants are topology types:
MPI_GRAPH Indicates a general graph
MPI_CART Indicates a Cartesian grid
MPI Status
The MPI_Status data type is a structure. The elements
that programmers can use are as follows:
MPI_SOURCE Indicates who sent the message
MPI_TAG Indicates with what tag the message was
sent
MPI_ERROR Indicates any error return
Special MPI Types and Functions
The following constants are special MPI types and
functions:
MPI_Aint Specifies a C type that
holds any valid address
MPI_Handler_function Specifies a C function for
handling errors (see the
MPI_Errhandler_create(3) man
page)
MPI_User_function Specifies a C function to
combine values (see the
Collective Operations
subsection on this man page)
and the MPI_Op_create(3) man
page)
MPI_Copy_function Specifies a function to copy
attributes (see the
MPI_Keyval_create(3) man
page)
MPI_Delete_function Specifies a function to
delete attributes (see the
MPI_Keyval_create(3) man
page)
MPI_ERRORS_ARE_FATAL Specifies an error handler
MPI_ERRORS_RETURN Specifies an error handler
that returns error codes (as
a value of the MPI routine
in C and through the last
argument in Fortran)
SEE ALSO
MPI_Allreduce(3), MPI_Bsend(3), MPI_Comm_compare(3),
MPI_Errhandler_create(3), MPI_Error_string(3),
MPI_Get_processor_name(3), MPI_Keyval_create(3),
MPI_Op_create(3), MPI_Reduce(3), MPI_Reduce_scatter(3),
MPI_Scan(3), MPI_Wtime(3)
Man(1) output converted with
man2html