1998
DOI: 10.1017/s0956796897002967
|View full text |Cite
|
Sign up to set email alerts
|

Algorithm + strategy = parallelism

Abstract: The process of writing large parallel programs is complicated by the need to specify both the parallel behaviour of the program and the algorithm that is to be used to compute its result. This paper introduces evaluation strategies: lazy higher-order functions that control the parallel evaluation of non-strict functional languages. Using evaluation strategies, it is possible to achieve a clean separation between algorithmic and behavioural code. The result is enhanced clarity and shorter parallel … Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

2
111
0

Year Published

1999
1999
2013
2013

Publication Types

Select...
6
3
1

Relationship

0
10

Authors

Journals

citations
Cited by 188 publications
(117 citation statements)
references
References 44 publications
2
111
0
Order By: Relevance
“…-Trinder et al [14], which has a wide range of examples. However beware: this paper is based on the earlier version of Strategies, and some of the examples may no longer work due to the new GC behaviour on sparks; also some of the names of functions and types in the library have since changed.…”
Section: Fig 5 Parlist Heap Structuresmentioning
confidence: 99%
“…-Trinder et al [14], which has a wide range of examples. However beware: this paper is based on the earlier version of Strategies, and some of the examples may no longer work due to the new GC behaviour on sparks; also some of the names of functions and types in the library have since changed.…”
Section: Fig 5 Parlist Heap Structuresmentioning
confidence: 99%
“…Moreover, access to local and remote data is automatically managed by the runtime system. Evaluation strategies [57,41] abstract from low-level expression marking and allow to describe patterns for parallel behaviour on a higher level of abstraction.…”
Section: Other Parallel Haskells (Related Work)mentioning
confidence: 99%
“…The purpose of this function is to fully reduce its argument and return True afterwards. Such an 'eval' function is usually used to express evaluation strategies in the context of parallelism [4,17]. We use eval for expressing definedness conditions.…”
Section: Using An 'Eval' Function To Denote Definedness Conditionsmentioning
confidence: 99%