HP-MPI Version 2.2 for HP-UX Release Note

HP-MPI V2.2 for HP-UX Release Note
Known Problems and Workarounds
19
Known Problems and Workarounds
The way to add to the paths searched by man is to add an entry in /etc/man.config. To
add MPI man pages, add the following line to /etc/man.config:
% MANPATH /opt/mpi/share/man
Profiling routines built for C calls will no longer cause the corresponding Fortran calls to
be wrapped automatically. In order to profile Fortran routines, separate wrappers need to
be written for the Fortran calls.
Calling MPI from Fortran 90 programs
HP-MPI complies with the 1.2 version of the MPI standard, which defines bindings for
Fortran 77, but not Fortran 90. Some features of Fortran 90 may interact with MPI
non-blocking semantics to produce unexpected results. Consult the HP MPI User’s Guide
for details.
Running out of system resources
HP-UX imposes a limit to the number of file descriptors that application processes can
have open at one time. When running an HP-MPI application across multiple hosts, each
local process opens a socket to all remote processes. HP-UX counts these sockets as open
file descriptors, so an HP-MPI application with a large number of off-host processes can
reach the maximum. If your applications frequently exceed the maximum, ask your
system administrator to increase the limit, or use the -commd option with mpirun. Use of
this option results in a run with fewer sockets, but adds a performance penalty for
inter-host communications.
Locating your instrumentation output file (prefix.instr) when you enable
instrumentation for multi-host runs
Whether you invoke mpirun on a host where at least one MPI process is running, or on a
host remote from all your MPI processes, HP-MPI writes the instrumentation output file
to the working directory on the host that is running rank 0.
In order to use the -tv option to mpirun, the TOTALVIEW environment variable must be
set.
% export TOTALVIEW=/opt/totalview/bin/totalview
Or add it to PATH.
TotalView sometimes displays extra HP-UX threads that have no useful debugging
information.