ivansichfreitas:
Hi fellow haskellers,
I'm interested in the performance of parallel and/or distributed
implementations in haskell language. For example, supose I want to
develop an application that distributes a computation between many
multicore computers, what are the advantages I can take from haskell
in that?
Anyone who has experience doing distributed computing with haskell,
and could point some diferences between haskell and other languages?
Any feedback is very much apreciated. Thanks.
The primary work in this area has been GUM/GPH and GDH, these days being
led from St Andrews, http://www-fp.cs.st-andrews.ac.uk/wordpress/
* GUM, a parallel execution layer to allow GHC 'par' strategies and
friends to run transparently across nodes, on top of an underlying
message passing layer.
http://www.macs.hw.ac.uk/~dsg/gph/
GHC implements the same abstractions for shared memory multicores.
* Glasgow Distributed Haskell, an extension of the Parallel Haskell
language to support distribution and fault tolerance,
http://www.macs.hw.ac.uk/~dsg/gdh/
These systems run on a fork of GHC's runtime. Recent work is underway to
merge some of the facilities back into mainline GHC.
http://hackage.haskell.org/trac/ghc/wiki/HackPar
There is also the Eden project, which I think is another implementation
of a parallel Haskell model, with features to support distribution.
The key players to talk to are Kevin Hammond, Jost Berthold,
Hans-Wolfgang Loidl, Philip Trinder et al.
Besides traditional language research projects, there are also various
open source libraries on Hackage to support distributed computation in
Haskell to some degree or another. For example:
A framework for distributed STM,
http://hackage.haskell.org/package/DSTM
Holumbus-Distribution, distributed data structures like Chan, MVar or
functions
http://hackage.haskell.org/package/Holumbus-Distribution
Holumbus map-reduce skeleton
http://hackage.haskell.org/package/Holumbus-MapReduce
net-concurrent is a simple haskell library for doing parallel
computation on several computers using the network
http://hackage.haskell.org/package/net-concurrent
-- Don
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe