On Friday, February 24, 2012, erotavlas_tu...@libero.it wrote:
> Hi all,
> 
> I would like to use Helgrind tool of Valgrind but I read on the manual the
> following statement: Runtime support library for GNU OpenMP (part of GCC),
> at least for GCC versions 4.2 and 4.3. The GNU OpenMP runtime library
> (libgomp.so) constructs its own synchronisation primitives using
> combinations of atomic memory instructions and the futex syscall, which
> causes total chaos since in Helgrind since it cannot "see" those.
> 
> The current version of GCC 4.6.2 still uses the futex syscall. Can I use
> Helgrind or the problem is still present?.

The problem is almost certainly still present.  However, I developed a
patch for GCC 4.5 that modifies its libgomp.so (the runtime support
library for GNU OpenMP) so that it passes information about
inter thread synchronisation events to Helgrind (and maybe, DRD).
Using that, it was possible to run quite large OpenMP apps on Helgrind
without false positives.

It does mean you have to patch and build your own gcc, and use that
to compile your app, but in the grand scheme of things that's no
big deal.  If you want to try it out, and/or try to update the patch
for gcc 4.6, I'm happy to make it available.

J

------------------------------------------------------------------------------
Virtualization & Cloud Management Using Capacity Planning
Cloud computing makes use of virtualization - but cloud computing 
also focuses on allowing computing to be delivered as a service.
http://www.accelacomm.com/jaw/sfnl/114/51521223/
_______________________________________________
Valgrind-users mailing list
Valgrind-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/valgrind-users

Reply via email to