Cilk: An Efficient Multithreaded Runtime System
Robert D. Blumofe,Christopher F. Joerg,Bradley C. Kuszmaul,Charles E. Leiserson,Keith H. Randall,Yuli Zhou +5 more
TLDR
It is shown that on real and synthetic applications, the “work” and “critical-path length” of a Cilk computation can be used to model performance accurately, and it is proved that for the class of “fully strict” (well-structured) programs, the Cilk scheduler achieves space, time, and communication bounds all within a constant factor of optimal.About:
This article is published in Journal of Parallel and Distributed Computing.The article was published on 1996-08-25 and is currently open access. It has received 1688 citations till now. The article focuses on the topics: Cilk & Work stealing.read more
Citations
More filters
Journal ArticleDOI
System architecture directions for networked sensors
TL;DR: Key requirements are identified, a small device is developed that is representative of the class, a tiny event-driven operating system is designed, and it is shown that it provides support for efficient modularity and concurrency-intensive operation.
Proceedings ArticleDOI
Cyber Physical Systems: Design Challenges
TL;DR: It is concluded that it will not be sufficient to improve design processes, raise the level of abstraction, or verify designs that are built on today's abstractions to realize the full potential of cyber-Physical Systems.
Proceedings ArticleDOI
Dryad: distributed data-parallel programs from sequential building blocks
TL;DR: The Dryad execution engine handles all the difficult problems of creating a large distributed, concurrent application: scheduling the use of computers and their CPUs, recovering from communication or computer failures, and transporting data between vertices.
Proceedings ArticleDOI
FFTW: an adaptive software architecture for the FFT
Matteo Frigo,Steven G. Johnson +1 more
TL;DR: An adaptive FFT program that tunes the computation automatically for any particular hardware, and tests show that FFTW's self-optimizing approach usually yields significantly better performance than all other publicly available software.
Proceedings ArticleDOI
The implementation of the Cilk-5 multithreaded language
TL;DR: Cilk-5's novel "two-clone" compilation strategy and its Dijkstra-like mutual-exclusion protocol for implementing the ready deque in the work-stealing scheduler are presented.
References
More filters
Journal ArticleDOI
PVM: a framework for parallel distributed computing
TL;DR: The PVM system is a programming environment for the development and execution of large concurrent or parallel applications that consist of many interacting, but relatively independent, components that operate on a collection of heterogeneous computing elements interconnected by one or more networks.
Journal ArticleDOI
MULTILISP: a language for concurrent symbolic computation
TL;DR: A recommended Multilisp programming style is presented which, if followed, should lead to highly parallel, easily understandable programs.
Journal ArticleDOI
Data parallel algorithms
W. Daniel Hillis,Guy L. Steele +1 more
TL;DR: The success of data parallel algorithms—even on problems that at first glance seem inherently serial—suggests that this style of programming has much wider applicability than was previously thought.
Proceedings ArticleDOI
Cilk: an efficient multithreaded runtime system
Robert D. Blumofe,Christopher F. Joerg,Bradley C. Kuszmaul,Charles E. Leiserson,Keith H. Randall,Yuli Zhou +5 more
TL;DR: This paper shows that on real and synthetic applications, the “work” and “critical path” of a Cilk computation can be used to accurately model performance, and proves that for the class of “fully strict” (well-structured) programs, the Cilk scheduler achieves space, time and communication bounds all within a constant factor of optimal.