Closed adamsolomou closed 6 years ago
From memory, Gaussian blur is set up to have time dependent random inputs, so each time you run create_input you'll get different inputs. There is also some quality slack included in the result comparison.
So I think it is quite feasible to get different results, especially if you're trying to look at non deterministic modes of operation.
I am working on the
gaussian_blur.hpp
puzzle. After doing some modifications in the code I runmake serenity_now
(after doingmake all
) and I get the following results:run_puzzle
reports that output is correct and thencompare_puzzle
reports that outputs are different.I then re-run
make serenity_now
without re-building and I get the following results:run_puzzle
reports that output is correct and thencompare_puzzle
reports that outputs are correct.So my question is how is it possible for one run of the test to show that outputs are different and the next run to show that they are correct?
I was expecting the result to be wrong since I deliberately parallelised over a loop that should lead to a race condition: