Hello Simon, Wednesday, December 10, 2008, 5:24:28 PM, you wrote:
good explanation of various shortanges on the way to multi-threading. may be it worth a link from GHC Concurrency pages? > Hoang Truong wrote: >> Hi Simon, >> >> I tried with forkIO and added another dowork functions but the result is >> the same: only one core is used, three other cores are idle. Do you have >> any other suggestions? Is there anything I should take care when >> installing GHC? >> >> I also did try the Wombat.hs from the tutorial, but only one core is >> used and the times are almost the same. >> >> seq sum: 119201850 >> seq time: 20.959932 seconds. >> par sum: 119201850 >> par time: 20.959547 seconds. > Your program is suffering from microbenchmarkitis, I'm afraid. There's > only one spark, which tickles a bug in the scheduler in 6.10.1 and earlier > (but sometimes doesn't happen due to random scheduling behaviour). Even > with that fixed, the program uses fib which tickles another bug: when > optimised, fib doesn't do any allocation, and GHC's scheduler relies on > allocation happening at regular enough intervals. > In 6.10.1 we never get to do load-balancing in this example, because fib > doesn't ever yield control to the scheduler. In HEAD, where we have > work-stealing and don't rely on the scheduler for load-balancing, the > load-balancing problem goes away but reveals another problem: the second > thread wants to GC, but in order to GC it has to synchronise with the other > running threads, but the other thread is running fib and never yields. We > can fix this by allowing CPUs to GC independently (which we plan to do), > but even then you could still run into the same problem because eventually > a global GC will be required. If you really want to see the program > running in parallel, turn off -O. > Cheers, > Simon > _______________________________________________ > Glasgow-haskell-users mailing list > Glasgow-haskell-users@haskell.org > http://www.haskell.org/mailman/listinfo/glasgow-haskell-users -- Best regards, Bulat mailto:[EMAIL PROTECTED] _______________________________________________ Glasgow-haskell-users mailing list Glasgow-haskell-users@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-users