Proceedings of the 1994 ACM Conference on LISP and Functional Programming - LFP '94 1994
DOI: 10.1145/182409.182442
|View full text |Cite
|
Sign up to set email alerts
|

Using the run-time sizes of data structures to guide parallel-thread creation

Abstract: Dynamic granularity estimation is a new technique for automatically identifying expressions in functional languages for parallel evaluation. Expressions with little computation relative to thread-creation costs should evaluate sequentially for maximum performance.

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
15
0

Year Published

1996
1996
2019
2019

Publication Types

Select...
4
3
1

Relationship

0
8

Authors

Journals

citations
Cited by 39 publications
(15 citation statements)
references
References 25 publications
0
15
0
Order By: Relevance
“…We are aware of very little work that considers user-defined higher-order programs, though Le Métayer's work [28] can handle predefined higher-order functions with known costs, and Benzinger's work on worst-case complexity analysis for NuPrl [3] similarly supports higher-order functions if the complexity information is provided explicitly. Huelsbergen, Larus and Aiken [20] have defined an abstract interpretation of a higher-order, strict language for determining computation costs that dependent on the size of data structures. This static analysis is combined with run-time size information to deliver dynamic granularity estimates.…”
Section: Abstract Interpretationsmentioning
confidence: 99%
“…We are aware of very little work that considers user-defined higher-order programs, though Le Métayer's work [28] can handle predefined higher-order functions with known costs, and Benzinger's work on worst-case complexity analysis for NuPrl [3] similarly supports higher-order functions if the complexity information is provided explicitly. Huelsbergen, Larus and Aiken [20] have defined an abstract interpretation of a higher-order, strict language for determining computation costs that dependent on the size of data structures. This static analysis is combined with run-time size information to deliver dynamic granularity estimates.…”
Section: Abstract Interpretationsmentioning
confidence: 99%
“…The solution to these expressions then gives upper bounds on the execution time. Other dynamic runtime analyses are often used in conjunction with a static resource analysis, for example to approximate the sizes of key data structures . In this context, they form ancillary analyses to the main resource analysis.…”
Section: Constructing Resource Analysesmentioning
confidence: 99%
“…This study is not the first to propose using cost prediction to determine when to cut off parallelism. One approach, developed in early work in functional programing, uses list size to determine cut offs [24]. Using list size alone is limited, because the technique assumes linear work complexity for every parallel operation.…”
Section: Related Workmentioning
confidence: 99%