[Insight-developers] valgrind & ITK

Bradley Lowekamp blowekamp at mail.nih.gov
Thu Feb 2 13:15:34 EST 2012


I had a small thought below:

On Feb 2, 2012, at 12:53 PM, Sean McBride wrote:

> On Fri, 27 Jan 2012 13:08:55 -0500, Sean McBride said:
> 
>> We've been setting up a valgrind dashboard, but the execution times of
>> ITK tests range across several orders of magnitude.
>> 
>> This makes choosing a timeout difficult, and especially so with
>> valgrind, where execution takes so much longer.
>> 
>> Could maybe the slowest ITK tests be broken up into several tests? Or is
>> there a way to specify different timeouts for with and without valgrind?
> 
> No one has any thoughts on this?...
> 
> 
> Our next problem is that there are many thousands of valgrind warnings from python.  From the logs:
> 
> 100: MemCheck command: /usr/local/bin/valgrind "--trace-children=yes" "--quiet" "--tool=memcheck" "--leak-check=yes" "--show-reachable=yes" "--num-callers=50" "--verbose" "--demangle=yes" "--gen-suppressions=all" "--suppressions=/home/builder/external/ITK/CMake/InsightValgrind.supp" "/usr/bin/python" "/home/builder/external/ITK/Utilities/Doxygen/mcdoc.py" "check" "ITKCommon" "/home/builder/external/ITK/Modules/Core/Common/include"
> 
> As you can see valgrind is invoked on python itself, therefore flagging issues within python itself.
> 
> The valgrind docs discuss this:
> 
> <http://valgrind.org/docs/manual/manual-core.html>
> 
> "Note that you should run the real (machine-code) executable here. If your application is started by, for example, a shell or Perl script, you'll need to modify it to invoke Valgrind on the real executables. Running such scripts directly under Valgrind will result in you getting error reports pertaining to /bin/sh, /usr/bin/perl, or whatever interpreter you're using. This may not be what you want and can be confusing. You can force the issue by giving the option --trace-children=yes, but confusion is still likely."
> 
> Should this be fixed with suppressions?  I see some python 2.6 suppressions in InsightValgrind.supp already....

Alternatively, a tag could be added to these python based tests, and those could not be run with valgrind. These appear to be more utility checks tests, the running our code. Might awell save time and not run valgrind on them.

> 
> Thanks,
> 
> -- 
> ____________________________________________________________
> Sean McBride, B. Eng                 sean at rogue-research.com
> Rogue Research                        www.rogue-research.com 
> Mac Software Developer              Montréal, Québec, Canada
> 
> 
> _______________________________________________
> Powered by www.kitware.com
> 
> Visit other Kitware open-source projects at
> http://www.kitware.com/opensource/opensource.html
> 
> Kitware offers ITK Training Courses, for more information visit:
> http://kitware.com/products/protraining.html
> 
> Please keep messages on-topic and check the ITK FAQ at:
> http://www.itk.org/Wiki/ITK_FAQ
> 
> Follow this link to subscribe/unsubscribe:
> http://www.itk.org/mailman/listinfo/insight-developers



More information about the Insight-developers mailing list