Difference between revisions of "Parallel"
Jump to navigation
Jump to search
m (→Get started) |
|||
Line 6: | Line 6: | ||
# Speed up your code by making it run on multicore: |
# Speed up your code by making it run on multicore: |
||
− | #: Start with Control.Parallel and refine with Strategies |
+ | #: Start with Control.Parallel ('''pseq''', '''par''') and refine with Strategies |
# Manage simultaneous IO actions (eg. multiple connections on a web server) |
# Manage simultaneous IO actions (eg. multiple connections on a web server) |
||
− | #: Start with Concurrent Haskell |
+ | #: Start with Concurrent Haskell ('''forkIO''', '''MVar''') |
# Work with clusters or do distributed programming |
# Work with clusters or do distributed programming |
||
#: Distributed programming is still ongoing research. See below for current efforts. |
#: Distributed programming is still ongoing research. See below for current efforts. |
Revision as of 13:21, 16 March 2011
Parallelism and Concurrency in Haskell
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.