1995
DOI: 10.1145/209937.209958
|View full text |Cite
|
Sign up to set email alerts
|

Cilk

Abstract: Cilk (pronounced "silk") is a C-based runtime system for multithreaded parallel programming.In this paper, we document the efficiency of the Cilk work-stealing scheduler, both empirically and analytically. We show that on real and synthetic applications, the "work" and "critical path" of a Cilk computation can be used to accurately model performance. Consequently, a Cilk programmer can focus on reducing the work and critical path of his computation, insulated from load balancing and other rtmtime scheduling is… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

0
33
0

Year Published

1996
1996
2017
2017

Publication Types

Select...
6
2

Relationship

0
8

Authors

Journals

citations
Cited by 281 publications
(33 citation statements)
references
References 27 publications
0
33
0
Order By: Relevance
“…Parallel programming languages, extensions, and libraries, such as Cilk [21], OpenMP [22] and Intel Thread Building Blocks [23] provide different forms of support for parallel programs. Charm++ [24] recently has been extended to support manycore architectures [25].…”
Section: Real-time Performancementioning
confidence: 99%
“…Parallel programming languages, extensions, and libraries, such as Cilk [21], OpenMP [22] and Intel Thread Building Blocks [23] provide different forms of support for parallel programs. Charm++ [24] recently has been extended to support manycore architectures [25].…”
Section: Real-time Performancementioning
confidence: 99%
“…A number of alternative programming techniques have been proposed including partitioned global address spaces [4], active messages [5], and Cilk [6]. Each of these has some advantages for fine-grained computations with complex access patterns, and some of their ideas can be found in recent parallel language efforts like Chapel [7], X10 [8], and Fortress [9].…”
Section: Commodity Clusters and Mpimentioning
confidence: 99%
“…Here we describe the synchronizer transformations for two forks followed by a join. 4 In the previous section, we showed how we were able to encode the inlet address and continuation address in the return continuation. The return continuation for a child was changed at most once by the parent if the child suspended.…”
Section: Efficient Synchronization: Synchronizersmentioning
confidence: 99%
“…These approaches have been used to implement many parallel languages, e.g., Mul-T [23], Id90 [9,30], CCϩϩ [6], Charm [20], Opus [25], Cilk [4], Olden [5], and Cid [29]. The common goal is to reduce the overhead associated with managing the logical parallelism.…”
Section: Related Workmentioning
confidence: 99%
See 1 more Smart Citation