[Haskell-cafe] Bulk Synchronous Parallel

Gregory Crosswhite gcross at phys.washington.edu
Mon Apr 19 18:03:39 EDT 2010


Hey everyone,

Has anyone done any work with bulk synchronous parallel computing in Haskell?  The idea behind the model is that you divide your computation into a series of computation and communication phases, and it has recently occurred to me that this might be an ideal setup for parallelizing a pure language like Haskell because you can think of it as alternating between a stage that independently applies a bunch of functions to a bunch of independent chunks of data and a stage that applies a big function to all of the chunks that recombines them into new chunks for the next parallel phase, so that all stages are conceptually pure even if eventually the second stage is turned into something involving communication and hence side-effectful under the hood.

Experiences?  Thoughts?

Cheers,
Greg



More information about the Haskell-Cafe mailing list