Difference between revisions of "Parallel/Reading"
< Parallel
Jump to navigation
Jump to search
m (→Papers: from Don's list) |
(→Papers: links to papers from Don's list) |
||
Line 5: | Line 5: | ||
* Improving [[Performance/Concurrency|concurrent Haskell performance]] |
* Improving [[Performance/Concurrency|concurrent Haskell performance]] |
||
− | == Papers == |
+ | == Papers to learn with == |
+ | |||
+ | See also [[Parallel/Research]] if you'd like to dig into the more research-oriented papers on Parallel Haskell |
||
* “[http://research.microsoft.com/en-us/um/people/simonpj/papers/parallel/multicore-ghc.pdf Runtime Support for Multicore Haskell]”, Marlow, Peyton Jones, Singh. 2009. Describes the architecture of the sparks and parallel GC |
* “[http://research.microsoft.com/en-us/um/people/simonpj/papers/parallel/multicore-ghc.pdf Runtime Support for Multicore Haskell]”, Marlow, Peyton Jones, Singh. 2009. Describes the architecture of the sparks and parallel GC |
||
− | * |
+ | * “[http://www.haskell.org/~simonmar/papers/threadscope.pdf Parallel Performance Tuning for Haskell]”, Jones, Marlow, Singh, 2009 Introduces ThreadScope, and methodical parallel performance advice |
− | * |
+ | * “[http://research.microsoft.com/en-us/um/people/simonpj/papers/ndp/fsttcs2008.pdf Harnessing the Multicores: Nested Data Parallelism in Haskell]”, Peyton Jones, Leshchinkskiy, Keller, Chakravarty, 2008. the Barnes-Hut algorithm in Data Parallel Haskell |
− | * |
+ | * “[http://research.microsoft.com/en-us/um/people/simonpj/papers/parallel/multiproc.pdf Haskell on a Shared-Memory Multiprocessor]”, Harris, Marlow, Peyton Jones, 2005 The original SMP runtime implementation paper |
− | * |
+ | * “[http://research.microsoft.com/en-us/um/people/simonpj/papers/stm/index.htm#beautiful Beautiful Concurrency]”, Peyton Jones, O’Reilly 2007 Introduction to software transactional memory |
− | * |
+ | * “[http://research.microsoft.com/en-us/um/people/simonpj/papers/stm/stm.pdf Composable memory transactions]“, Harris, Marlow, Peyton Jones, and Herlihy, 2005 - Introduces composable software transactional memory |
− | * |
+ | * “[http://www.macs.hw.ac.uk/~dsg/gph/papers/html/Strategies/strategies.html Algorithm + Strategy = Parallelism]”, Trinder, Hammond, Loidl, Peyton Jones, 1998. Introduces parallel sparks and strategies |
− | * |
+ | * “[http://www.galois.com/~sof/papers/concurrent-haskell.ps.gz Concurrent Haskell]”, Peyton Jones, Gordon, Finne, 1996. Introduces concurrent Haskell and forkIO. |
− | * |
+ | * “[http://research.microsoft.com/en-us/um/people/simonpj/papers/marktoberdorf/ Tackling the Awkward Squad]”, Peyton Jones, 2001. Classic introduction to concurrency in Haskell (and IO), and how to use MVars and Channels. |
== Surveys == |
== Surveys == |
Revision as of 11:08, 20 April 2011
Tutorials
- See "Real World Haskell" chapter 24, for an introduction to the most common forms of concurrent and parallel programming in GHC.
- Step by step guide to implicit and explicit parallelism in Haskell, and transactional memory - “A Tutorial on Parallel and Concurrent Programming in Haskell”, Peyton Jones and Singh. 2008
- Improving concurrent Haskell performance
Papers to learn with
See also Parallel/Research if you'd like to dig into the more research-oriented papers on Parallel Haskell
- “Runtime Support for Multicore Haskell”, Marlow, Peyton Jones, Singh. 2009. Describes the architecture of the sparks and parallel GC
- “Parallel Performance Tuning for Haskell”, Jones, Marlow, Singh, 2009 Introduces ThreadScope, and methodical parallel performance advice
- “Harnessing the Multicores: Nested Data Parallelism in Haskell”, Peyton Jones, Leshchinkskiy, Keller, Chakravarty, 2008. the Barnes-Hut algorithm in Data Parallel Haskell
- “Haskell on a Shared-Memory Multiprocessor”, Harris, Marlow, Peyton Jones, 2005 The original SMP runtime implementation paper
- “Beautiful Concurrency”, Peyton Jones, O’Reilly 2007 Introduction to software transactional memory
- “Composable memory transactions“, Harris, Marlow, Peyton Jones, and Herlihy, 2005 - Introduces composable software transactional memory
- “Algorithm + Strategy = Parallelism”, Trinder, Hammond, Loidl, Peyton Jones, 1998. Introduces parallel sparks and strategies
- “Concurrent Haskell”, Peyton Jones, Gordon, Finne, 1996. Introduces concurrent Haskell and forkIO.
- “Tackling the Awkward Squad”, Peyton Jones, 2001. Classic introduction to concurrency in Haskell (and IO), and how to use MVars and Channels.