Q-Logic IB6054601-00 D User Manual
3 – Using InfiniPath MPI
InfiniPath MPI Limitations
IB6054601-00 D
3-21
Q
Symbolic debugging is easier than machine language debugging. To enable
symbolic debugging you must have compiled with the
symbolic debugging you must have compiled with the
-g
option to
mpicc
so that
the compiler will have included symbol tables in the compiled object code.
To run your MPI program with a debugger use the
-debug
or
-debug-no-pause
and
-debugger
options to
mpirun
. See the
man
pages to
pathdb
,
gdb
, and
strace
for details. When you run under a debugger, you get an xterm window on the front
end machine for each node process. Thus, you can control the different node
processes as desired.
end machine for each node process. Thus, you can control the different node
processes as desired.
To use
strace
with your MPI program, the syntax would be:
$ mpirun -np n -m mpihosts strace program-name
The following features of InfiniPath MPI especially facilitate debugging:
■
Stack backtraces are provided for programs that crash.
■
-debug
and
-debug-no-pause
options are provided for
mpirun
that can make
each node program start with debugging enabled. The
-debug
option allows you
to set breakpoints, and start running programs individually. The
-debug-no-pause
option allows postmortem inspection. Note that you should
set
-q 0
when using
-debug.
■
Communication between
mpirun
and node programs can be printed by
specifying the
mpirun -verbose
option.
■
MPI implementation debug messages can be printed by specifying the
mpirun
-psc-debug-level
option. Note that this can substantially impact the
performance of the node program.
■
Support is provided for progress timeout specifications, deadlock detection, and
generating information about where a program is stuck.
generating information about where a program is stuck.
■
Several misconfigurations (such as mixed use of 32-bit/64-bit executables) are
detected by the runtime.
detected by the runtime.
■
A formatted list containing information useful for high-level MPI application
profiling is provided by using the
profiling is provided by using the
-print-stats
option with
mpirun
. Statistics
include minimum, maximum and median values for message transmission
protocols as well as a more detailed information for expected and unexpected
message reception. See
protocols as well as a more detailed information for expected and unexpected
message reception. See
for more information and a sample
output listing.
3.12
InfiniPath MPI Limitations
The current version of InfiniPath MPI has the following limitations:
By default, at most eight node programs per node with the QHT7140 are allowed,
and at most four node programs per node with the QLE7140. The error message
when this limit is exceeded is:
and at most four node programs per node with the QLE7140. The error message
when this limit is exceeded is: