5 32 bit builds on xc4000, 6 truncated messages, 7 allowing windows to use exclusive locks – HP XC System 2.x Software User Manual
Page 118: Section 8.5), Section 8.6), Section 8.7)
If you would like to see the effects of using the TCP/IP protocol over a higher-speed system
interconnect, use the
-TCP
option and omit the
-subnet
option. Generally, performance as
measured by Pallas will be roughly 40% to 50% slower using TCP/IP over Elan, GM, or IT-API.
8.4.2 Global Environment Variable Settings on the
mpirun
Command Line
Environment variables can be set globally on the
mpirun
command line:
$ mpirun -e MPI_FLAGS=y -f appfile
In the above example, if some
MPI_FLAGS
setting was specified in the application file, then
the global setting on the command line would override the setting in the application file. To add
to an environment variable rather than replacing it, use the following command:
$ mpirun -e MPI_FLAGS=%MPI_FLAGS,y -f appfile
The percent sign (
%
) is appended to the environment variable. For example,
%MPI_FLAGS
.
In the above example, if the application file (
appfile
) specified
MPI_FLAGS=z
, then the
resulting
MPI_FLAGS
seen by the application would be
z,y
.
8.5 32-Bit Builds on XC4000
HP-MPI on HP XC provides support for 32-bit builds on XC4000 systems. Options provided
are:
$ mpicc [-mpi32|-mpi64] ...
$ mpif90 [-mpi32|-mpi64] ...
The
[-mpi32|-mpi64]
option tells the real compiler where to find the correct 32-bit or
64-bit MPI header files and library. They are not passed down to the real compiler. You still
need to specify the other necessary compiler options to generate 32-bit or 64-bit code.
For example, to use
gcc
to generate 32-bit code:
$ mpicc -mpi32 ...
-m32 ...
-mpi64
is the default.
8.6 Truncated Messages
An application will continue to run normally after receiving truncated messages if the
MPI_Errhandler
is set to
MPI_ERRORS_RETURN
.
•
The receive call returns an error class of
MPI_ERR_TRUNCATE
.
•
The count field in the resulting status argument represents the amount of data received
by the receiver.
•
The receive buffer will only contain as much data as was specified in the receive call.
8.7 Allowing Windows to Use Exclusive Locks
An environment variable called
MPI_ELANLOCK
is provided with this release of HP-MPI on
HP XC. By default, MPI only provides exclusive window locks by means of Elan lock when
using the Elan system interconnect.
In order to use MPI shared window locks, you must turn off Elan lock and use window locks by
means of shared memory. In this way, both exclusive and shared locks are from shared memory.
To turn off Elan locks, enter the following command:
$ setenv MPI_ELANLOCK=0
8-8
Using HP-MPI