[petsc-dev] valgrind question
Barry Smith
bsmith at mcs.anl.gov
Tue Mar 1 20:52:10 CST 2016
Satish will know far better than me. I only use Linux when my Mac OS fails me :-(
> On Mar 1, 2016, at 8:41 PM, Xiaoye S. Li <xsli at lbl.gov> wrote:
>
> This is on linux (ubunto). I did compile with -g, but only the example driver (which is outside library) shows the line number, the routine in the *.so does not show line number, see this:
>
> ==31609== Conditional jump or move depends on uninitialised value(s)
> ==31609== at 0x51EED86: MPIC_Waitall (in /home/xiaoye/mpich-install/lib/libmpi.so.12.1.0)
> ==31609== by 0x5148F99: MPIR_Alltoallv_intra (in /home/xiaoye/mpich-install/lib/libmpi.so.12.1.0)
> ==31609== by 0x5149916: MPIR_Alltoallv (in /home/xiaoye/mpich-install/lib/libmpi.so.12.1.0)
> ==31609== by 0x51499F6: MPIR_Alltoallv_impl (in /home/xiaoye/mpich-install/lib/libmpi.so.12.1.0)
> ==31609== by 0x514A0C7: PMPI_Alltoallv (in /home/xiaoye/mpich-install/lib/libmpi.so.12.1.0)
> ==31609== by 0x4E7C56A: pdCompRow_loc_to_CompCol_global (in /home/xiaoye/Dropbox/Codes/SuperLU/superlu_dist.git/lib/libsupe\
> rlu_dist.so.5.0.0)
> ==31609== by 0x4E71761: pdgssvx (in /home/xiaoye/Dropbox/Codes/SuperLU/superlu_dist.git/lib/libsuperlu_dist.so.5.0.0)
> ==31609== by 0x401400: main (pddrive.c:171)
>
>
> Here are the flags:
>
> C_FLAGS = -DUSE_VENDOR_BLAS -DAdd_ -DDEBUGlevel=0 -DPRNTlevel=0 -std=c99 -g -fPIC -I/home/xiaoye/Dropbox/Codes/SuperLU/superl\
> u_dist.git/SRC -I/home/xiaoye/lib/parmetis-4.0.3/include -I/home/xiaoye/lib/parmetis-4.0.3/metis/include -I/home/xiaoye/mpich-\
> install/include
>
>
> Any idea?
> Sherry
>
>
> On Tue, Mar 1, 2016 at 6:00 PM, Barry Smith <bsmith at mcs.anl.gov> wrote:
>
> > On Mar 1, 2016, at 7:41 PM, Xiaoye S. Li <xsli at lbl.gov> wrote:
> >
> > Barry,
> >
> > I am cleaning up the valgrind errors. I did a build with shared library option, but valgrind doesn't give me the source code line number. Is it true that I need to build as static library?
>
> No but if you are running on an Apple you may need the additional valgrind option --dsymutil=yes (yes it is totally goofy that it doesn't just do this automatically). Also, of course, the source code needs be compiled with the -g option.
>
> Barry
>
> >
> > Sherry
> >
>
>
More information about the petsc-dev
mailing list