
On 13/12/2009 18:09, Philip Beadling wrote:
I've come to the conclusion that, yep, you can't (directly) parallelise of fold operation, as fold guarantees order of processing.
True, but you can evaluate the elements in the input list to foldl' in parallel, as you were doing. Presumably this doesn't give you enough parallelism in your case, though. May I recommend that you pick up the latest parallel package: http://hackage.haskell.org/package/parallel and also the GHC 6.12.1 release (due any time now). The new parallel package in particular cures a nasty space leak when using Strategies, and the new GHC includes a host of improvements to parallel performance. If you still have trouble, then try using ThreadScope http://code.haskell.org/ThreadScope/ with GHC 6.12.1. You can use ThreadScope directly from the darcs repository on code.haskell.org, and we hope to do a proper release soon. Cheers, Simon