Bug#812852: Fwd: Re: Vigra auf ppc64el

Daniel Stender stender at debian.org
Tue Mar 8 19:59:37 UTC 2016




-------- Forwarded Message --------
Subject: Re: Vigra auf ppc64el
Date: Fri, 4 Mar 2016 15:56:16 +0100
From: Ullrich Koethe <ullrich.koethe at iwr.uni-heidelberg.de>
To: Daniel Stender <stender at debian.org>
CC: Francesco Biscani <bluescarni at gmail.com>

Hallo Daniel,

unfortunately, we can't investigate this problem ourselves because we 
don't have access to a ppc system. Here are some ideas what you could try:

* Enable another set of threading primitives by passing

    -DWITH_BOOST_THREAD=1

to cmake. If the error goes away, the problem might be in the threading 
bits of Vigra or (less likely) in an outdated version of std::thread.

* Remove all occurencies of threading::memory_order* in 
multi_array_chunked.hxx (or equivalently, replace them with 
threading::memory_order_seq_cst). This will force all atomic accesses to 
use sequentially consistent ordering, the most strict possibility.

* compile + run with various sanitizers. Specifically, you should look 
into the address, undefined behaviour and thread sanitizer. The first 
two can be enabled with the gcc/clang command line flags:

  -fsanitize=undefined,address

The third one with:

  -fsanitize=thread

Alternatively or in addition

   valgrind --tool=helgrind ./tests/test_executable
   valginrd --tool=drd ./tests/test_executable

might be useful.

* It would be helpful to know if the problem is deterministic or not. Do 
multiple runs of the same test produce the same errors?

Best
Francesco and Ulli



More information about the debian-science-maintainers mailing list