Revision as of 15:33, 16 March 2011 by EricKow
Parallelism and Concurrency in Haskell
1 Get started
Haskell supports both pure parallelism and explicit concurrency. How would you like to begin?
- Speed up your code by making it run on multicore:
- Start with Control.Parallel (pseq, par) and refine with Strategies
- Manage simultaneous IO actions (eg. multiple connections on a web server)
- Start with Concurrent Haskell (forkIO, MVar)
- Work with clusters or do distributed programming
- Distributed programming is still ongoing research. See below for current efforts.
- In the meantime, you could use the Haskell MPI bindings, which use Concurrent Haskell and the MPI library.
2 Dig deeper
- Threadscope - parallel programs not getting faster? Use the Threadscope debugger and watch sparks fly.
- Comprehensive list of Parallelism and Concurrency libraries
3 Stay in touch
- The parallel-haskell mailing list
- Follow @parallelhaskell on Twitter
- StackOverflow on Haskell parallelism and concurrency