HP-MPI Version 2.3.1 for Linux Release Note

Table Of Contents
IMPORTANT: When waiting on a receive request that uses MPI_ANY_SOURCE on an
intracommunicator, the request is never considered complete due to rank or interconnect
failures because the rank that created the receive request can legally match it. For
intercommunicators, after all processes in the remote group are unavailable, the request
is considered complete and, the MPI_ERROR field of the MPI_Status() structure
indicates MPI_ERR_EXITED.
MPI_Waitall() waits until all requests are complete, even if an error occurs with
some requests. If some requests fail, MPI_IN_STATUS is returned. Otherwise,
MPI_SUCCESS is returned. In the case of an error, the error code is returned in the
status array.
3.9 Enhanced InfiniBand Support for Dynamic Processes
This release supports the use of InfiniBand between processes in different MPI worlds.
Processes that are not part of the same MPI world, but are introduced through calls to
MPI_Comm_connect(), MPI_Comm_accept(), MPI_Comm_spawn(), or
MPI_Comm_spawn_multiple() attempt to use InfiniBand for communication. Both
sides need to have InfiniBand support enabled and use the same InfiniBand parameter
settings, otherwise TCP will be used for the connection. Only OFED IBV protocol is
supported for these connections. When the connection is established through one of
these MPI calls, a TCP connection is first established between the root process of both
sides. TCP connections are set up among all the processes. Finally, IBV InfiniBand
connections are established among all process pairs, and the TCP connections are closed.
3.10 Singleton Launching
This release supports the creation of a single rank without the use of mpirun, called
singleton launching. It is only valid to launch an MPI_COMM_WORLD of size one using
this approach. The single rank created in this way is executed as if it were created with
mpirun -np 1 <executable>. HP-MPI environment variables can influence the
behavior of the rank. Interconnect selection can be controlled using the environment
variable MPI_IC_ORDER. Many command-line options that would normally be passed
to mpirun cannot be used with singletons. Examples include, but are not limited to,
-cpu_bind, -d, -prot, -ndd, -srq, and -T. Some options, such as -i, are accessible
through environment variables (MPI_INSTR) and can still be used by setting the
appropriate environment variable before creating the process.
Creating a singleton using fork() and exec() from another MPI process has the
same limitations that OFED places on fork() and exec().
3.11 Using the -stdio=files Option
This option specifies that the standard input, output and error of each rank is to be
taken from the files specified by the environment variables MPI_STDIO_INFILE,
22 New or Changed Features in V2.3