/usr/lib/mpich-shmem/bin/mpirun_dbg.dbx is in mpich-shmem-bin 1.2.7-10ubuntu1.
This file is owned by root:root, with mode 0o755.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 | #!/bin/sh
cmdLineArgs=""
p4pgfile=""
p4workdir=""
prognamemain=""
while [ 1 -le $# ] ; do
arg=$1
shift
case $arg in
-cmdlineargs)
cmdLineArgs="$1"
shift
;;
-p4pg)
p4pgfile="$1"
shift
;;
-p4wd)
p4workdir="$1"
shift
;;
-progname)
prognamemain="$1"
shift
;;
esac
done
#
#dbgfile=$p4workdir/PId$$
#
# START EDITING HERE
#echo "ignore USR1" >> $dbgfile
#echo "debug $prognamemain" >> $dbgfile
#echo "stop in MPI_Init" >> $dbgfile
#echo "run -p4pg $p4pgfile -p4wd $p4workdir $prognamemain $cmdLineArgs" >> $dbgfile
#
#dbx -s$dbgfile $prognamemain
# END EDITING HERE
#rm -f $dbgfile
cat <<EOF
Modify the mpirun_dbg.dbx file to make use of the proper dbx commands to
run a program.
The command syntax of dbx on various platforms has been changing in
incompatible ways; you will need to find out how to accomplish the following
steps:
Tell dbx to ignore SIG_USR1
Specify the name of the program to debug
Tell dbx to stop in MPI_Init
Run a program with specific options (see the example below)
For some versions of dbx, the following commands can be used.
First, place the commands into a temporary file (all of the shell variables
are set in the mpirun_dbg.dbx script):
echo "ignore USR1" >> \$dbgfile
echo "debug $prognamemain" >> \$dbgfile
echo "stop in MPI_Init" >> \$dbgfile
echo "run -p4pg \$p4pgfile -p4wd \$p4workdir \$prognamemain \$cmdLineArgs" >> \$dbgfile
Then tell dbx to run the program, reading this file first:
dbx -s \$dbgfile \$prognamemain
If your dbx supports -sr filename instead of -s filename, use that instead.
Note that in some versions of dbx, -s filename causes and .dbxinit or .dbxrc
file to be ignored; other version read the -s specified filename in addition
to .dbxinit or .dbxrc .
EOF
|