Cilk
Sign in to saveAlso known as Cilk Plus, Cilk++
Cilk, Cilk++, Cilk Plus and OpenCilk are general-purpose programming languages designed for multithreaded parallel computing. They are based on the C and C++ programming languages, which they extend with constructs to express parallel loops and the fork–join idiom.
~18 min read
Encyclopedic overview
19 sectionsContents
- History
- MIT Cilk
- Cilk Arts and Cilk++
- Intel Cilk Plus
- Differences between versions
- Deprecation of Cilk Plus
- OpenCilk
- Language features
- Task parallelism: spawn and sync
- Inlets
- Parallel loops
- Reducers and hyperobjects
- Array notation
- Elemental functions
- #pragma simd
- Work-stealing
- See also
- References
- External links
Cilk, Cilk++, Cilk Plus and OpenCilk are general-purpose programming languages designed for multithreaded parallel computing. They are based on the C and C++ programming languages, which they extend with constructs to express parallel loops and the fork–join idiom.
Originally developed in the 1990s at the Massachusetts Institute of Technology (MIT) in the group of Charles E. Leiserson, Cilk was later commercialized as Cilk++ by a spinoff company, Cilk Arts. That company was subsequently acquired by Intel, which increased compatibility with existing C and C++ code, calling the result Cilk Plus. After Intel stopped supporting Cilk Plus in 2017, MIT is again developing Cilk in the form of OpenCilk.
Excerpted from Wikipedia’s “Cilk” article, available under the CC BY-SA 4.0 licence.