Strange GHC/STM behaviour

2010-03-15 Thread Michael Lesniak
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

Re: Strange GHC/STM behaviour

2010-03-15 Thread Michael Lesniak
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.

Re: Strange GHC/STM behaviour

2010-03-15 Thread Michael Lesniak
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

Re: Strange GHC/STM behaviour

2010-03-16 Thread Michael Lesniak
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