2008
DOI: 10.1007/978-3-540-89330-1_10
|View full text |Cite
|
Sign up to set email alerts
|

Harnessing the Multicores: Nested Data Parallelism in Haskell

Abstract: Abstract. If you want to program a parallel computer, a purely functional language like Haskell is a promising starting point. Since the language is pure, it is by-default safe for parallel evaluation, whereas imperative languages are by-default unsafe. But that doesn't make it easy! Indeed it has proved quite difficult to get robust, scalable performance increases through parallel functional programming, especially as the number of processors increases.A particularly promising and well-studied approach to emp… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
3
1
1

Citation Types

0
12
0

Year Published

2009
2009
2020
2020

Publication Types

Select...
4
3
2

Relationship

1
8

Authors

Journals

citations
Cited by 51 publications
(13 citation statements)
references
References 24 publications
0
12
0
Order By: Relevance
“…For a predecessor of DPH, Nepal, it is shown how a Barnes-Hut algorithm can be implemented in this language [25]. Concrete performance comparisons with this Haskell variant would be interesting future work.…”
Section: Discussionmentioning
confidence: 99%
“…For a predecessor of DPH, Nepal, it is shown how a Barnes-Hut algorithm can be implemented in this language [25]. Concrete performance comparisons with this Haskell variant would be interesting future work.…”
Section: Discussionmentioning
confidence: 99%
“…We focus specifically on improving co-scheduling between jobs using abstractions such as CDDP [12], Cilk [11], Data-Parallel Haskell [30], Galois [17], and OpenMP. In these settings, workloads identify sources of parallelism without explicitly forking threads.…”
Section: Setting and Assumptionsmentioning
confidence: 99%
“…Pure dataparallel languages follow this strategy [28], as do languages that force references to be either task-unique or immutable [5]. But some algorithms are more naturally or efficiently written using shared state or message passing.…”
Section: Introductionmentioning
confidence: 99%