The Cilk++ concurrency platform

CE Leiserson - Proceedings of the 46th Annual Design Automation …, 2009 - dl.acm.org
Proceedings of the 46th Annual Design Automation Conference, 2009dl.acm.org
The availability of multicore processors across a wide range of computing platforms has
created a strong demand for software frameworks that can harness these resources. This
paper overviews the Cilk++ programming environment, which incorporates a compiler, a
runtime system, and a race-detection tool. The Cilk++ runtime system guarantees to load-
balance computations effectively. To cope with legacy codes containing global variables,
Cilk++ provides a" hyperobject" library which allows races on nonlocal variables to be …
The availability of multicore processors across a wide range of computing platforms has created a strong demand for software frameworks that can harness these resources. This paper overviews the Cilk++ programming environment, which incorporates a compiler, a runtime system, and a race-detection tool. The Cilk++ runtime system guarantees to load-balance computations effectively. To cope with legacy codes containing global variables, Cilk++ provides a "hyperobject" library which allows races on nonlocal variables to be mitigated without lock contention or substantial code restructuring.
ACM Digital Library