[petsc-users] gnu debugger
Anthony Haas
aph at email.arizona.edu
Fri Jul 24 16:18:38 CDT 2015
Hi Barry,
Thanks for your enlightening answers (as usual). It all makes sense now,
indeed, I am calling PetscInitialize() multiple times. In my program, I
use first PETSc alone to solve a linear system (I have a call to
PetscInitialize and a call to PetscFinalize) and then I use SLEPc to
compute eigenvalues. I did it like that because of memory consideration:
I was thinking that some memory could be freed after the first
petscfinalize but maybe I should only call slepcinitialize once and
slepcfinalize once?
Anthony
On 07/24/2015 02:00 PM, Barry Smith wrote:
>> On Jul 24, 2015, at 3:43 PM, Anthony Haas <aph at email.arizona.edu> wrote:
>>
>> Hi,
>>
>> I am trying to run my code through the gnu debugger with:
>>
>> ${PETSC_DIR}/${PETSC_ARCH}/bin/mpirun -n 2 ./BiGlobal_Spectral_Petsc.x -ksp_type preonly -pc_type lu -pc_factor_mat_solver_package superlu_dist -eps_view -st_ksp_type preonly -st_pc_type lu -st_pc_factor_mat_solver_package superlu_dist -start_in_debugger
>>
>> Following that command, I can see on my main screen:
>>
>> 3D POISEUILLE BASEFLOW COMPUTED ON GRID WITH NX = 15 NY = 15 ==> this is a comment in my program
>>
>> [0]PETSC ERROR: PETSC: Attaching gdb to ./BiGlobal_Spectral_Petsc.x of pid 30562 on display :0 on machine veltins.cfd.ame.arizona.edu
>> [1]PETSC ERROR: PETSC: Attaching gdb to ./BiGlobal_Spectral_Petsc.x of pid 30563 on display :0 on machine veltins.cfd.ame.arizona.edu
>>
>>
>> And at the same time, I have 2 xterms that open. I have attached (see below) the content of 1 of the xterms since their content is very similar. Upon opening, the xterms seem to load some debugging info and then, I get:
>>
>> (gdb)
>>
>> At that point I type continue in both xterms which then show something like: [Inferior 1 (process 30563) exited normally] (see below). And at the same time, 2 other xterms open (I have then 4 xterms open).
> This is not expected. Are you calling PetscInitialize() multiple times?
>
>> If I type continue in these 2 new xterms, I get: The program is not being run.
> Strange.
>
>
>>
>> Is the command continue that I have used suitable here?
> Yes that is what I do.
>
>> Does the [Inferior 1 (process 30563) exited normally] means that no bug was detected?
> Usually yes.
>
>> Or does [0]PETSC ERROR: PETSC: Attaching gdb to ... means that something is going wrong?
> Our printing the string PETSC ERROR here is kind of silly cause there is not really an error, I'll see if I can eliminate this.
>
> What happens if you use just one MPI process?
> 1) do you still get the "extra" xterm and gdb?
> 2) if you use start_in_debugger with one MPI process does it again offer an "extra" gdb after the first one?
>
> Barry
>
>>
>> Thanks
>>
>> Anthony
>>
>>
>>
>>
>>
>>
>>
>>
>> GNU gdb (GDB) Red Hat Enterprise Linux 7.6.1-64.el7
>> Copyright (C) 2013 Free Software Foundation, Inc.
>> License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
>> This is free software: you are free to change and redistribute it.
>> There is NO WARRANTY, to the extent permitted by law. Type "show copying"
>> and "show warranty" for details.
>> This GDB was configured as "x86_64-redhat-linux-gnu".
>> For bug reporting instructions, please see:
>> <http://www.gnu.org/software/gdb/bugs/>...
>> Reading symbols from /home/anthony/Desktop/BiGlobal-Fortran-New/PETSc/Build-BiGlobal-Matrices/BiGlobal_Spectral_Petsc.x...done.
>> Attaching to program: /home/anthony/Desktop/BiGlobal-Fortran-New/PETSc/Build-BiGlobal-Matrices/./BiGlobal_Spectral_Petsc.x, process 30563
>> Reading symbols from /home/anthony/LIB/petsc-3.6.0/linux-gnu-debug-mumps-superludist-complex/lib/libpetsc.so.3.6...done.
>> Loaded symbols for /home/anthony/LIB/petsc-3.6.0/linux-gnu-debug-mumps-superludist-complex/lib/libpetsc.so.3.6
>> Reading symbols from /lib64/libpthread.so.0...(no debugging symbols found)...done.
>> [Thread debugging using libthread_db enabled]
>> Using host libthread_db library "/lib64/libthread_db.so.1".
>> Loaded symbols for /lib64/libpthread.so.0
>> Reading symbols from /home/anthony/LIB/petsc-3.6.0/linux-gnu-debug-mumps-superludist-complex/lib/libparmetis.so...done.
>> Loaded symbols for /home/anthony/LIB/petsc-3.6.0/linux-gnu-debug-mumps-superludist-complex/lib/libparmetis.so
>> Reading symbols from /home/anthony/LIB/petsc-3.6.0/linux-gnu-debug-mumps-superludist-complex/lib/libmetis.so...done.
>> Loaded symbols for /home/anthony/LIB/petsc-3.6.0/linux-gnu-debug-mumps-superludist-complex/lib/libmetis.so
>> Reading symbols from /lib64/libX11.so.6...Reading symbols from /lib64/libX11.so.6...(no debugging symbols found)...done.
>> (no debugging symbols found)...done.
>> Loaded symbols for /lib64/libX11.so.6
>> Reading symbols from /lib64/libssl.so.10...Reading symbols from /lib64/libssl.so.10...(no debugging symbols found)...done.
>> (no debugging symbols found)...done.
>> Loaded symbols for /lib64/libssl.so.10
>> Reading symbols from /lib64/libcrypto.so.10...Reading symbols from /lib64/libcrypto.so.10...(no debugging symbols found)...done.
>> (no debugging symbols found)...done.
>> Loaded symbols for /lib64/libcrypto.so.10
>> Reading symbols from /lib64/libgfortran.so.3...(no debugging symbols found)...done.
>> Loaded symbols for /lib64/libgfortran.so.3
>> Reading symbols from /lib64/libm.so.6...(no debugging symbols found)...done.
>> Loaded symbols for /lib64/libm.so.6
>> Reading symbols from /home/anthony/LIB/petsc-3.6.0/linux-gnu-debug-mumps-superludist-complex/lib/libmpifort.so.12...done.
>> Loaded symbols for /home/anthony/LIB/petsc-3.6.0/linux-gnu-debug-mumps-superludist-complex/lib/libmpifort.so.12
>> Reading symbols from /lib64/libquadmath.so.0...(no debugging symbols found)...done.
>> Loaded symbols for /lib64/libquadmath.so.0
>> Reading symbols from /home/anthony/LIB/petsc-3.6.0/linux-gnu-debug-mumps-superludist-complex/lib/libmpicxx.so.12...done.
>> Loaded symbols for /home/anthony/LIB/petsc-3.6.0/linux-gnu-debug-mumps-superludist-complex/lib/libmpicxx.so.12
>> Reading symbols from /lib64/libstdc++.so.6...(no debugging symbols found)...done.
>> Loaded symbols for /lib64/libstdc++.so.6
>> Reading symbols from /lib64/libdl.so.2...(no debugging symbols found)...done.
>> Loaded symbols for /lib64/libdl.so.2
>> Reading symbols from /home/anthony/LIB/petsc-3.6.0/linux-gnu-debug-mumps-superlu
>> dist-complex/lib/libmpi.so.12...done.
>> Loaded symbols for /home/anthony/LIB/petsc-3.6.0/linux-gnu-debug-mumps-superludist-complex/lib/libmpi.so.12
>> Reading symbols from /lib64/libgcc_s.so.1...(no debugging symbols found)...done.
>> Loaded symbols for /lib64/libgcc_s.so.1
>> Reading symbols from /home/anthony/LIB/slepc-3.6.0/linux-gnu-debug-mumps-superludist-complex/lib/libslepc.so.3.6...done.
>> Loaded symbols for /home/anthony/LIB/slepc-3.6.0/linux-gnu-debug-mumps-superludist-complex/lib/libslepc.so.3.6
>> Reading symbols from /lib64/libc.so.6...(no debugging symbols found)...done.
>> Loaded symbols for /lib64/libc.so.6
>> Reading symbols from /lib64/ld-linux-x86-64.so.2...(no debugging symbols found)...done.
>> Loaded symbols for /lib64/ld-linux-x86-64.so.2
>> Reading symbols from /lib64/libxcb.so.1...Reading symbols from /lib64/libxcb.so.1...(no debugging symbols found)...done.
>> (no debugging symbols found)...done.
>> Loaded symbols for /lib64/libxcb.so.1
>> Reading symbols from /lib64/libgssapi_krb5.so.2...Reading symbols from /lib64/libgssapi_krb5.so.2...(no debugging symbols found)...done.
>> (no debugging symbols found)...done.
>> Loaded symbols for /lib64/libgssapi_krb5.so.2
>> Reading symbols from /lib64/libkrb5.so.3...Reading symbols from /lib64/libkrb5.so.3...(no debugging symbols found)...done.
>> (no debugging symbols found)...done.
>> Loaded symbols for /lib64/libkrb5.so.3
>> Reading symbols from /lib64/libcom_err.so.2...Reading symbols from /lib64/libcom_err.so.2...(no debugging symbols found)...done.
>> (no debugging symbols found)...done.
>> Loaded symbols for /lib64/libcom_err.so.2
>> Reading symbols from /lib64/libk5crypto.so.3...Reading symbols from /lib64/libk5crypto.so.3...(no debugging symbols found)...done.
>> (no debugging symbols found)...done.
>> Loaded symbols for /lib64/libk5crypto.so.3
>> Reading symbols from /lib64/libz.so.1...Reading symbols from /lib64/libz.so.1...(no debugging symbols found)...done.
>> (no debugging symbols found)...done.
>> Loaded symbols for /lib64/libz.so.1
>> Reading symbols from /lib64/librt.so.1...(no debugging symbols found)...done.
>> Loaded symbols for /lib64/librt.so.1
>> Reading symbols from /lib64/libXau.so.6...Reading symbols from /lib64/libXau.so.6...(no debugging symbols found)...done.
>> (no debugging symbols found)...done.
>> Loaded symbols for /lib64/libXau.so.6
>> Reading symbols from /lib64/libkrb5support.so.0...Reading symbols from /lib64/libkrb5support.so.0...(no debugging symbols found)...done.
>> (no debugging symbols found)...done.
>> Loaded symbols for /lib64/libkrb5support.so.0
>> Reading symbols from /lib64/libkeyutils.so.1...Reading symbols from /lib64/libkeyutils.so.1...(no debugging symbols found)...done.
>> (no debugging symbols found)...done.
>> Loaded symbols for /lib64/libkeyutils.so.1
>> Reading symbols from /lib64/libresolv.so.2...(no debugging symbols found)...done.
>> Loaded symbols for /lib64/libresolv.so.2
>> Reading symbols from /lib64/libselinux.so.1...Reading symbols from /lib64/libselinux.so.1...(no debugging symbols found)...done.
>> (no debugging symbols found)...done.
>> Loaded symbols for /lib64/libselinux.so.1
>> Reading symbols from /lib64/libpcre.so.1...Reading symbols from /lib64/libpcre.s
>> o.1...(no debugging symbols found)...done.
>> (no debugging symbols found)...done.
>> Loaded symbols for /lib64/libpcre.so.1
>> Reading symbols from /lib64/liblzma.so.5...Reading symbols from /lib64/liblzma.so.5...(no debugging symbols found)...done.
>> (no debugging symbols found)...done.
>> Loaded symbols for /lib64/liblzma.so.5
>> Reading symbols from /lib64/libnss_files.so.2...(no debugging symbols found)...done.
>> Loaded symbols for /lib64/libnss_files.so.2
>> 0x00007faacd261470 in __nanosleep_nocancel () from /lib64/libc.so.6
>> Missing separate debuginfos, use: debuginfo-install glibc-2.17-78.el7.x86_64 keyutils-libs-1.5.8-3.el7.x86_64 krb5-libs-1.12.2-14.el7.x86_64 libX11-1.6.0-2.1.el7.x86_64 libXau-1.0.8-2.1.el7.x86_64 libcom_err-1.42.9-7.el7.x86_64 libgcc-4.8.3-9.el7.x86_64 libgfortran-4.8.3-9.el7.x86_64 libquadmath-4.8.3-9.el7.x86_64 libselinux-2.2.2-6.el7.x86_64 libstdc++-4.8.3-9.el7.x86_64 libxcb-1.9-5.el7.x86_64 openssl-libs-1.0.1e-42.el7.9.x86_64 pcre-8.32-14.el7.x86_64 xz-libs-5.1.2-9alpha.el7.x86_64 zlib-1.2.7-13.el7.x86_64
>> (gdb) continue
>> Continuing.
>> Detaching after fork from child process 30734.
>> [Inferior 1 (process 30563) exited normally]
>>
More information about the petsc-users
mailing list