On Tue, 2010-08-10 at 15:34 +0200, Patrick Riesen wrote: > Anders Logg wrote: > > For some reason, it's not possible to run valgrind when DOLFIN is > > compiled with CGAL (because of some special trick used in CGAL). > > ooops. and there's no trick around it? or other tools to sniff around > for memory leaks? >
There's a flag for CGAL (I can't remember what it is) that will allow valgrind to be run. Try searching for an earlier discussion on this list. Garth > > Andre Massing might explain in more detail. > > > > -- > > Anders > > > > > > On Tue, Aug 10, 2010 at 03:03:16PM +0200, Patrick Riesen wrote: > >> hello, > >> > >> do you use valgrind on dolfin examples? > >> > >> im on revision 4861 (dolfin0.8.8) and if i run valgrind on an example i get > >> > >> prie...@vierzack01:/<8>cpp>valgrind ./demo > >> ==8028== Memcheck, a memory error detector. > >> ==8028== Copyright (C) 2002-2007, and GNU GPL'd, by Julian Seward et al. > >> ==8028== Using LibVEX rev 1854, a library for dynamic binary translation. > >> ==8028== Copyright (C) 2004-2007, and GNU GPL'd, by OpenWorks LLP. > >> ==8028== Using valgrind-3.3.1-Debian, a dynamic binary > >> instrumentation framework. > >> ==8028== Copyright (C) 2000-2007, and GNU GPL'd, by Julian Seward et al. > >> ==8028== For more details, rerun with: -v > >> ==8028== > >> terminate called after throwing an instance of 'CGAL::Assertion_exception' > >> what(): CGAL ERROR: assertion violation! > >> Expr: -CGAL_IA_MUL(-1.1, 10.1) != CGAL_IA_MUL(1.1, 10.1) > >> File: /scratch/priesen-second/FEniCS/build/include/CGAL/Interval_nt.h > >> Line: 158 > >> Explanation: Wrong rounding: did you forget the -frounding-math > >> option if you use GCC? > >> ==8028== Invalid free() / delete / delete[] > >> ==8028== at 0x4C2130F: free (vg_replace_malloc.c:323) > >> ==8028== by 0xB31C7AA: (within /lib/libc-2.7.so) > >> ==8028== by 0xB31C361: __libc_freeres (in /lib/libc-2.7.so) > >> ==8028== by 0x4A1D31C: _vgnU_freeres (vg_preloaded.c:60) > >> ==8028== by 0xB24A3F2: abort (in /lib/libc-2.7.so) > >> ==8028== by 0xAB0B7EA: __gnu_cxx::__verbose_terminate_handler() > >> (in > >> /usr/pack/gcc-4.4.1-sd/amd64-debian-linux4.0/lib/libstdc++.so.6.0.12) > >> ==8028== by 0xAB08A27: __cxxabiv1::__terminate(void (*)()) (in > >> /usr/pack/gcc-4.4.1-sd/amd64-debian-linux4.0/lib/libstdc++.so.6.0.12) > >> ==8028== by 0xAB08A4F: std::terminate() (in > >> /usr/pack/gcc-4.4.1-sd/amd64-debian-linux4.0/lib/libstdc++.so.6.0.12) > >> ==8028== by 0xAB08C67: __cxa_throw (in > >> /usr/pack/gcc-4.4.1-sd/amd64-debian-linux4.0/lib/libstdc++.so.6.0.12) > >> ==8028== by 0x7F4EB49: CGAL::assertion_fail(char const*, char > >> const*, int, char const*) (in > >> /scratch/priesen-second/FEniCS/build/lib/libCGAL.so.5.0.0) > >> ==8028== by 0x511EA6C: _GLOBAL__I_BarycenterQuadrature.cpp > >> (Interval_nt.h:157) > >> ==8028== by 0x5146225: (within > >> /scratch/priesen-second/FEniCS/build/lib/libdolfin.so.0.9.8) > >> ==8028== Address 0x41c84a8 is not stack'd, malloc'd or (recently) free'd > >> ==8028== > >> ==8028== ERROR SUMMARY: 4 errors from 1 contexts (suppressed: 8 from 1) > >> ==8028== malloc/free: in use at exit: 6,914 bytes in 36 blocks. > >> ==8028== malloc/free: 58 allocs, 26 frees, 9,182 bytes allocated. > >> ==8028== For counts of detected errors, rerun with: -v > >> ==8028== searching for pointers to 36 not-freed blocks. > >> ==8028== checked 3,359,888 bytes. > >> ==8028== > >> ==8028== LEAK SUMMARY: > >> ==8028== definitely lost: 0 bytes in 0 blocks. > >> ==8028== possibly lost: 753 bytes in 8 blocks. > >> ==8028== still reachable: 6,161 bytes in 28 blocks. > >> ==8028== suppressed: 0 bytes in 0 blocks. > >> ==8028== Rerun with --leak-check=full to see details of leaked memory. > >> Abort > >> > >> i can get past this even if i try to generate a suppression file > >> from valgrind using -gen-suppressions / -suppressions=file. > >> > >> do you get this as well? > >> > >> greetings, > >> patrick > >> > >> _______________________________________________ > >> Mailing list: https://launchpad.net/~dolfin > >> Post to : dolfin@lists.launchpad.net > >> Unsubscribe : https://launchpad.net/~dolfin > >> More help : https://help.launchpad.net/ListHelp > > > _______________________________________________ > Mailing list: https://launchpad.net/~dolfin > Post to : dolfin@lists.launchpad.net > Unsubscribe : https://launchpad.net/~dolfin > More help : https://help.launchpad.net/ListHelp _______________________________________________ Mailing list: https://launchpad.net/~dolfin Post to : dolfin@lists.launchpad.net Unsubscribe : https://launchpad.net/~dolfin More help : https://help.launchpad.net/ListHelp