<div dir="ltr">The debugger stops when you start up, that&#39;s this code [1].  Then you want to hit &#39;continue&#39; so your job runs normally to where it fails.  You can also set a break point on PetscError since PETSc is catching the error from MPI.  When you stop at the &#39;second breakpoint&#39;, you&#39;ll be at the part where your code has detected an error condition in MPI.  Type a &#39;where&#39; there to get the stack when the error was detected. <div>
<br></div><div>[1]</div><div><span class="Apple-style-span" style="font-family: arial, sans-serif; font-size: 13px; background-color: rgb(255, 255, 255); ">(gdb) where<br>#0  0x00007fae5b941590 in __nanosleep_nocancel () at<br>
<div class="im" style="color: rgb(80, 0, 80); ">../sysdeps/unix/syscall-template.S:82<br></div>#1  0x00007fae5b94143c in __sleep (seconds=0) at<br>../sysdeps/unix/sysv/linux/sleep.c:138<br>#2  0x000000000056cc48 in PetscSleep (s=10) at psleep.c:56<br>
#3  0x0000000000838887 in PetscAttachDebugger () at adebug.c:410<br>#4  0x00000000005590a7 in PetscOptionsCheckInitial_Private () at init.c:392<br>#5  0x000000000055e40e in PetscInitialize (argc=0x7ffff403debc,<br>args=0x7ffff403deb0, file=0x0,<br>
   help=0x0) at pinit.c:639<br>#6  0x0000000000524a16 in PetscSolver::InitializePetsc<br>(argc=0x7ffff403debc, argv=0x7ffff403deb0)<br>   at /home/dsz/src/framework/trunk/solve/PetscSolver.cxx:124<br>#7  0x00000000004c404f in main (argc=4, argv=0x7ffff403e4c8)<br>
   at /home/dsz/src/framework/trunk/solve/cd3t10mpi_main.cxx:526<br>(gdb)<br></span><br></div><div><br></div><div><br><div class="gmail_quote">On Fri, Aug 19, 2011 at 8:22 PM, Dominik Szczerba <span dir="ltr">&lt;<a href="mailto:dominik@itis.ethz.ch">dominik@itis.ethz.ch</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">What do you mean by &quot;the second break&quot;?<br>
<font color="#888888"><br>
Dominik<br>
</font><div><div></div><div class="h5"><br>
On Fri, Aug 19, 2011 at 6:47 PM, Aron Ahmadia &lt;<a href="mailto:aron.ahmadia@kaust.edu.sa">aron.ahmadia@kaust.edu.sa</a>&gt; wrote:<br>
&gt; You want to do a &#39;where&#39; on the second break, when your program is raising<br>
&gt; an abort signal...<br>
&gt; A<br>
&gt;<br>
&gt; On Fri, Aug 19, 2011 at 6:57 PM, Dominik Szczerba &lt;<a href="mailto:dominik@itis.ethz.ch">dominik@itis.ethz.ch</a>&gt;<br>
&gt; wrote:<br>
&gt;&gt;<br>
&gt;&gt; (gdb) where<br>
&gt;&gt; #0  0x00007fae5b941590 in __nanosleep_nocancel () at<br>
&gt;&gt; ../sysdeps/unix/syscall-template.S:82<br>
&gt;&gt; #1  0x00007fae5b94143c in __sleep (seconds=0) at<br>
&gt;&gt; ../sysdeps/unix/sysv/linux/sleep.c:138<br>
&gt;&gt; #2  0x000000000056cc48 in PetscSleep (s=10) at psleep.c:56<br>
&gt;&gt; #3  0x0000000000838887 in PetscAttachDebugger () at adebug.c:410<br>
&gt;&gt; #4  0x00000000005590a7 in PetscOptionsCheckInitial_Private () at<br>
&gt;&gt; init.c:392<br>
&gt;&gt; #5  0x000000000055e40e in PetscInitialize (argc=0x7ffff403debc,<br>
&gt;&gt; args=0x7ffff403deb0, file=0x0,<br>
&gt;&gt;    help=0x0) at pinit.c:639<br>
&gt;&gt; #6  0x0000000000524a16 in PetscSolver::InitializePetsc<br>
&gt;&gt; (argc=0x7ffff403debc, argv=0x7ffff403deb0)<br>
&gt;&gt;    at /home/dsz/src/framework/trunk/solve/PetscSolver.cxx:124<br>
&gt;&gt; #7  0x00000000004c404f in main (argc=4, argv=0x7ffff403e4c8)<br>
&gt;&gt;    at /home/dsz/src/framework/trunk/solve/cd3t10mpi_main.cxx:526<br>
&gt;&gt; (gdb)<br>
&gt;&gt;<br>
&gt;&gt; PetscSolver.cxx:124:<br>
&gt;&gt;<br>
&gt;&gt;        ierr = PetscInitialize(argc, argv, (char *)0, (char *)0);<br>
&gt;&gt; CHKERRQ(ierr);<br>
&gt;&gt;<br>
&gt;&gt; Hmmm, not very helpful.....<br>
&gt;&gt;<br>
&gt;&gt; The app runs on one cpu, but silently crashes on two.<br>
&gt;&gt;<br>
&gt;&gt; Any hints are very appreciated.<br>
&gt;&gt;<br>
&gt;&gt; Dominik<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt; On Fri, Aug 19, 2011 at 5:49 PM, Satish Balay &lt;<a href="mailto:balay@mcs.anl.gov">balay@mcs.anl.gov</a>&gt; wrote:<br>
&gt;&gt; &gt; On Fri, 19 Aug 2011, Dominik Szczerba wrote:<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt;&gt; Hi,<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; I am starting my app in the debugger as:<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; mpiexec -np 2 sm3t4mpi run.xml -start_in_debugger -display :0.0<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; In the console I get:<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; [1]PETSC ERROR: MPI error 14<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; in the two open terminals with gdb I get:<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; 0x00007f2ecdd15590 in __nanosleep_nocancel () at<br>
&gt;&gt; &gt;&gt; ../sysdeps/unix/syscall-template.S:82<br>
&gt;&gt; &gt;&gt; 82      ../sysdeps/unix/syscall-template.S: No such file or directory.<br>
&gt;&gt; &gt;&gt;         in ../sysdeps/unix/syscall-template.S<br>
&gt;&gt; &gt;&gt; (gdb)<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; I type &#39;c&#39; nonetheless and see:<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; (gdb) c<br>
&gt;&gt; &gt;&gt; Continuing.<br>
&gt;&gt; &gt;&gt; [New Thread 0x7f268e975700 (LWP 22388)]<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; Program received signal SIGABRT, Aborted.<br>
&gt;&gt; &gt;&gt; 0x00007f268f421d05 in raise (sig=6) at<br>
&gt;&gt; &gt;&gt; ../nptl/sysdeps/unix/sysv/linux/raise.c:64<br>
&gt;&gt; &gt;&gt; 64      ../nptl/sysdeps/unix/sysv/linux/raise.c: No such file or<br>
&gt;&gt; &gt;&gt; directory.<br>
&gt;&gt; &gt;&gt;         in ../nptl/sysdeps/unix/sysv/linux/raise.c<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; How do I go on debugging?<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; what do you get for:<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; (gdb) where<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; Satish<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; Many thanks for any hints,<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; Dominik<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt;<br>
&gt;<br>
&gt;<br>
</div></div></blockquote></div><br></div></div>