[Debian-med-packaging] Bug#1026061: bart: FTBFS randomly in bullseye (failing test)
Bernhard Übelacker
bernhardu at mailbox.org
Sun Jan 1 14:39:33 GMT 2023
Dear Maintainer,
I could reproduce this failure in a bullseye VM.
There the "test_nufft_adjoint" fails in about 1.2 % of the runs.
Attached diff helps to make it more visible.
It looks like the float comparison fails because the
limit of "1.E-6f" is slightly not enough.
If interpret following floating point comparison document right,
then the failing cases are just 8 representable floats "ULPs"
away from the expected value, below 8 it does not fail.
https://randomascii.wordpress.com/2012/02/25/comparing-floating-point-numbers-2012-edition/
Maybe upstream could consider changing that
float comparison to something like this:
https://source.winehq.org/git/wine.git/blob/HEAD:/dlls/ddraw/tests/ddraw7.c#l61
In the newer Bookworm package I have found following patch,
which does relax exactly this test:
https://salsa.debian.org/med-team/bart/-/blob/master/debian/patches/0003-relax-failing-unit-test.patch
But for some reason it does still not fail if I remove that
patch in the Bookworm version.
Kind regards,
Bernhard
make utest
while true; do ./test_nufft ; done
Bullseye/stable/bart-0.6.00:
- -1.067273+3.247031i - -1.067273+3.247030i - sc1=6.3619987432198080e+01 sc2=6.3619926397041880e+01 diff=9.6109602054639254e-07 diff_ulp=7
adjoint diff: 0.000001 9.6109602054639254e-07, limit: 9.9999999747524271e-07
./test_nufft: 1/ 1 passed.
- -1.067273+3.247030i - -1.067273+3.247030i - sc1=6.3619926397041830e+01 sc2=6.3619926397041880e+01 diff=8.3446502685546875e-07 diff_ulp=7
adjoint diff: 0.000001 8.3446502685546875e-07, limit: 9.9999999747524271e-07
./test_nufft: 1/ 1 passed.
- -1.067273+3.247031i - -1.067273+3.247030i - sc1=6.3619987432198087e+01 sc2=6.3619926397041880e+01 diff=8.5963040419301251e-07 diff_ulp=6
adjoint diff: 0.000001 8.5963040419301251e-07, limit: 9.9999999747524271e-07
./test_nufft: 1/ 1 passed.
- -1.067272+3.247031i - -1.067273+3.247030i - sc1=6.3619987432198073e+01 sc2=6.3619926397041880e+01 diff=1.0662403155947686e-06 diff_ulp=8
adjoint diff: 0.000001 1.0662403155947686e-06, limit: 9.9999999747524271e-07
ERROR: ./test_nufft: 0/ 1 passed.
- -1.067273+3.247031i - -1.067273+3.247030i - sc1=6.3619987432198087e+01 sc2=6.3619926397041880e+01 diff=8.5963040419301251e-07 diff_ulp=6
adjoint diff: 0.000001 8.5963040419301251e-07, limit: 9.9999999747524271e-07
./test_nufft: 1/ 1 passed.
- -1.067273+3.247031i - -1.067273+3.247030i - sc1=6.3619987432198080e+01 sc2=6.3619926397041880e+01 diff=9.6109602054639254e-07 diff_ulp=7
adjoint diff: 0.000001 9.6109602054639254e-07, limit: 9.9999999747524271e-07
./test_nufft: 1/ 1 passed.
Bookworm/testing/bart-0.8.00:
- -1.067272+3.247031i - -1.067273+3.247030i - sc1=6.3619987432198073e+01 sc2=6.3619926397041880e+01 diff=1.0662403155947686e-06 diff_ulp=8
adjoint diff: 0.000000 3.1195452265819767e-07, limit: 9.9999999747524271e-07
./test_nufft: 1/ 1 passed.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: make_it_more_visible.patch
Type: text/x-patch
Size: 1449 bytes
Desc: not available
URL: <http://alioth-lists.debian.net/pipermail/debian-med-packaging/attachments/20230101/215a9f70/attachment.bin>
More information about the Debian-med-packaging
mailing list