Q-Logic IB6054601-00 D Switch 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
-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.
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.
Several misconfigurations (such as mixed use of 32-bit/64-bit executables) are
detected by the runtime.
A formatted list containing information useful for high-level MPI application
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 appendix C.8.13 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: