Hello,
In one of my example programs I have a strange behaviour: it is a very
simple taskpool using STM; in pseudocode it's
1. generate data structures
2. initialize data structures
3. fork threads
4. wait (using STM) until the pool is empty and all threads are finished
5. print a final message
Hello Simon,
> GC. It's likely that one of these is your problem. All of them are fixed
> in 6.12.2, so if you are able to grab a snapshot and test it that would be
> very helpful.
Where can I get version is 6.12.2? According to [1], there are both
6.13... and 6.12.1, but I did not find 6.12.2.
Hello Simon,
with 6.12.1.20100313 the behaviour is worse: even when using $! in the
appropiate lines (see [2] in my original message) the programs hangs
quite often. Hence, 6.12.1 works better in this (special?) case.
Any other things I can do to help identifying the problem?
Cheers,
Michael
Hello Simon,
> I reproduced the deadlock, and it looks like a new one: a lock order
> reversal between Schedule.c:checkBlackHoles() and RtsAPI.c:rts_unlock(). It
> turns out I've already fixed it in the HEAD as a side effect of some other
> improvements, so I'm going to try to bring those into th