Abstract
Enabling programmers to "think parallel'' is critical if we are to be able to effectively exploit future multicore/manycore architectures.
This paper introduces paraforming: a new approach to constructing parallel functional programs using formally-defined refactoring transformations.
We introduce a number of new refactorings for Parallel Haskell that capture common parallel abstractions, such as divide-and-conquer
and data parallelism,
and show how these can be used by the HaRe Haskell refactoring engine. Using a paraforming approach, we are able to easily obtain
significant and scalable speedups
(up to 7.8 on an 8-core machine).
This paper introduces paraforming: a new approach to constructing parallel functional programs using formally-defined refactoring transformations.
We introduce a number of new refactorings for Parallel Haskell that capture common parallel abstractions, such as divide-and-conquer
and data parallelism,
and show how these can be used by the HaRe Haskell refactoring engine. Using a paraforming approach, we are able to easily obtain
significant and scalable speedups
(up to 7.8 on an 8-core machine).
Original language | English |
---|---|
Number of pages | 16 |
Publication status | Published - 1 Oct 2011 |
Event | 12th Symposium on Trends in Functional Programming - Madrid, Spain Duration: 16 May 2011 → 18 May 2011 |
Conference
Conference | 12th Symposium on Trends in Functional Programming |
---|---|
Country/Territory | Spain |
City | Madrid |
Period | 16/05/11 → 18/05/11 |
Keywords
- Refactoring
- Parallelism
- Haskell
- HaRe
- Paraforming
- Paraphrase
- GpH