On Tuesday 10 Dec 2013 19:00:09 Alan W. Irwin wrote: > On 2013-12-11 01:26-0000 Andrew Ross wrote: > > On Monday 09 Dec 2013 13:09:29 Alan W. Irwin wrote: > >> Hi Andrew: > >> > >> On 2013-12-09 19:59-0000 Andrew Ross wrote: > >>> I'll do some further testing, but unless I find any issues I don't > >>> propose > >>> doing any further work before the release. > >> > >> Thanks very much for your propagation efforts, testing, and the fixes > >> you have generated as a result during this release cycle. Furthermore, > >> it is good to know you are done with changes for this release cycle > >> unless something else shows up in our further tests this week. > > > > OK. So my next round of testing involved running the examples with > > valgrind > > using the --debug option to plplot-test.sh. This has shown a number of > > issues. Some of these are rather subtle and depend on the compiler > > optimisation issue. For example, one seems to be related to plcolorbar > > and only appears when -O3 is used, and I've not got to the bottom of it > > yet. > > Hi Andrew: > > You may be doing this already, but for the others here I suggest using > the convenient -DVALGRIND_ALL_TESTS=ON which systematically applies > the --debug option to all test targets (which is most of them) that > use plplot-test.sh. That's how I found that plcolorbar -O3 issue (as > discussed previously here) with the "make test_noninteractive" > command. > > As you have found it is a really tough memory management issue to > figure out since optimization (which is required to generate the > memory management issue) makes using gdb rather difficult. So it would > be great if you could figure it out because diagnosing the problem is > certainly beyond my level of gdb expertise. > > > I've fixed a number of other issues, but some still remain for fortran / > > C++. I'll try and address these if I can, but I'd recommend others to try > > this test as well. > > Thanks for those additional fixes. > > For the others here, -DVALGRIND_ALL_TESTS=ON will be ignored if valgrind is > not installed (or cannot be installed). But for those with access to > valgrind I > strongly second Andrew's appeal. All you have to do is use the > -DVALGRIND_ALL_TESTS=ON cmake option and run the normal "make > test_noninteractive" and "make test_interactive" test commands.
Hi Alan, Yes, I've been using this option. Very handy. I've now got the test_diff_psc resuilts valgrind clean for C and C++ with standard optimisation. I've not (yet) tracked down the colorbar problem with -O3. Fortran is almost clean, except for an issue with example 20. I'm not quite sure what the problem is. (Valgrind output is below in case Arjen has any ideas.) D examples are not valgrind clean at all yet. I'll try and get to look at that too. Andrew Valgrind output for fortran example 20. ==21590== Memcheck, a memory error detector ==21590== Copyright (C) 2002-2012, and GNU GPL'd, by Julian Seward et al. ==21590== Using Valgrind-3.8.1 and LibVEX; rerun with -h for copyright info ==21590== Command: /home/andrew/software/plplot/build/examples/f95/x20f -dev psc -o ./x20f95%n.psc ==21590== Parent PID: 21464 ==21590== ==21590== Syscall param write(buf) points to uninitialised byte(s) ==21590== at 0x5960700: __write_nocancel (syscall-template.S:81) ==21590== by 0x5337A47: ??? (in /usr/lib/x86_64-linux- gnu/libgfortran.so.3.0.0) ==21590== by 0x5337D3C: ??? (in /usr/lib/x86_64-linux- gnu/libgfortran.so.3.0.0) ==21590== by 0x5337D78: ??? (in /usr/lib/x86_64-linux- gnu/libgfortran.so.3.0.0) ==21590== by 0x533732A: ??? (in /usr/lib/x86_64-linux- gnu/libgfortran.so.3.0.0) ==21590== by 0x402032: read_img.1934 (x20f.f90:318) ==21590== by 0x4027B5: MAIN__ (x20f.f90:191) ==21590== by 0x403779: main (x20f.f90:72) ==21590== Address 0x82a3f40 is 0 bytes inside a block of size 8,192 alloc'd ==21590== at 0x4C2A2DB: malloc (in /usr/lib/valgrind/vgpreload_memcheck- amd64-linux.so) ==21590== by 0x5273BB4: ??? (in /usr/lib/x86_64-linux- gnu/libgfortran.so.3.0.0) ==21590== by 0x53379ED: ??? (in /usr/lib/x86_64-linux- gnu/libgfortran.so.3.0.0) ==21590== by 0x533837C: ??? (in /usr/lib/x86_64-linux- gnu/libgfortran.so.3.0.0) ==21590== by 0x532F48F: ??? (in /usr/lib/x86_64-linux- gnu/libgfortran.so.3.0.0) ==21590== by 0x532FD5B: _gfortran_st_open (in /usr/lib/x86_64-linux- gnu/libgfortran.so.3.0.0) ==21590== by 0x401F3F: read_img.1934 (x20f.f90:311) ==21590== by 0x4027B5: MAIN__ (x20f.f90:191) ==21590== by 0x403779: main (x20f.f90:72) ==21590== ==21590== ==21590== HEAP SUMMARY: ==21590== in use at exit: 0 bytes in 0 blocks ==21590== total heap usage: 1,246,240 allocs, 1,246,240 frees, 145,836,405 bytes allocated ==21590== ==21590== All heap blocks were freed -- no leaks are possible ==21590== ==21590== For counts of detected and suppressed errors, rerun with: -v ==21590== Use --track-origins=yes to see where uninitialised values come from ==21590== ERROR SUMMARY: 1 errors from 1 contexts (suppressed: 2 from 2) ------------------------------------------------------------------------------ Rapidly troubleshoot problems before they affect your business. Most IT organizations don't have a clear picture of how application performance affects their revenue. With AppDynamics, you get 100% visibility into your Java,.NET, & PHP application. Start your 15-day FREE TRIAL of AppDynamics Pro! http://pubads.g.doubleclick.net/gampad/clk?id=84349831&iu=/4140/ostg.clktrk _______________________________________________ Plplot-devel mailing list Plplot-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/plplot-devel