HP-MPI Version 2.3.1 for Linux Release Note

Table Of Contents
4.23 Disabling Interval Timer Conflicts
Interval timer functionality used by HP-MPI on HP XC systems can conflict with gprof
data collection phase requirements. Set the following two environment variables to
workaround this issue:
% export MPI_FLAGS=s0
% export GMON_OUT_PREFIX=/tmp/app_name
In the above example, setting MPI_FLAGS disables the HP-MPI conflicting use of
interval timers. See the mpienv(1) manpage for descriptions of MPI_FLAG settings.
Because this setting also disables message progression monitoring, use it with
well-behaved programs only.
In the above example, the second setting causes gprof data collection files to be named
/tmp/app_name.PID (where PID is the process ID number). The prefix is set arbitrarily
and makes the file unique in cases where the same PID is given on different nodes.
4.24 libpthread Dependency
The HP-MPI V2.3 library for Linux contains a dependency which requires libpthread.
The mpicc, mpif90, etc. compiler wrapper scripts automatically add the necessary
-lpthread, but manually linked applications must explicitly add -lpthread.
4.25 Fortran Calls Wrappers
Profiling routines built for C calls do not cause the corresponding Fortran calls to be
wrapped automatically. To profile Fortran routines, you must write separate wrappers
for the Fortran calls.
4.26 Bindings for C++ and Fortran 90
HP-MPI complies with the MPI-1.2 standard, which defines bindings for Fortran 77
and C, but not Fortran 90 or C++. HP-MPI also complies with the C++ binding definitions
detailed in the MPI-2 standard. However, the C++ bindings are not thread safe and
should not be used with the HP-MPI threaded libraries (for example, libmtmpi). HP-MPI
does not provide bindings for Fortran 90. Some features of Fortran 90 might interact
with MPI non-blocking semantics to produce unexpected results. For details, see the
HP-MPI User’s Guide.
4.27 Using HP Caliper
When using the HP Caliper profiling tool with HP-MPI applications, specify the
following environment variable setting to avoid an application abort.
% setenv HPMPI_NOPROPAGATE_SUSP 1
or
$ export HPMPI_NOPROPAGATE_SUSP=1
32 Known Issues and Workarounds