On Sun, Aug 12, 2012 at 11:20 AM, Aleksey Khudyakov
<alexey.skladnoy@gmail.com> wrote:
On 10.08.2012 22:20, Till Berger wrote:
So I am not sure if this is a bug in Criterion itself, the Statistics
package or any dependency or if I am doing something obviously wrong. I
would be grateful if someone could look into this as it is holding me
back from using Criterion for benchmarking my code.
I would suspect Statistics.Resampling.resample. From quick glance
criterion doesn't use any concurrent stuff. I'll try create smaller test
case
It looks like I'm wrong. I obtained event log from crashing program
and resample completed its work without problems. Crash occured later.
Next
suspect is bootstrapBCA itself. It uses monad-par to obtain
parallelism[1].
I tried to create smaller test case without any success.
[1]
https://github.com/bos/statistics/blob/master/Statistics/Resampling/Bootstrap.hs#L84
Replacing "runPar $ parMap" with a simple "map" on that line seems to
fix the bug. At least I could not reproduce it anymore on several runs
with my original test case. So it seems to be a bug in the Par monad
package as this change shouldn't alter the program's behaviour, should it?
Looks like this is the case. But reducing test case to reasonable size (e.g. removing most of criterion and statistics could be quite difficult