Parallel/Reading
< Parallel
Jump to navigation
Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.
Tutorials
- Parallel and Concurrent Programming in Haskell - tutorial by Simon Marlow. Code available on GitHub
- "Real World Haskell" chapter 24: an introduction to the most common forms of concurrent and parallel programming in GHC.
- “A Tutorial on Parallel and Concurrent Programming in Haskell”, Peyton Jones and Singh. 2008, a Step by step guide to implicit and explicit parallelism in Haskell, and transactional memory
- Improving concurrent Haskell performance
- Deterministic Parallel Programming in Haskell : a tutorial in parallel programming, with sample code and exercises
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.
Surveys
- The status of parallel and concurrent programming in Haskell.
Other
- Concurrent Haskell in Wikipedia