The Cilk Project

Cilk

Cilk is a language for multithreaded parallel programming based on ANSI C. Cilk is designed for general-purpose parallel programming, but it is especially effective for exploiting dynamic, highly asynchronous parallelism, which can be difficult to write in data-parallel or message-passing style. Using Cilk, our group has developed three world-class chess programs, StarTech, *Socrates, and Cilkchess. Cilk provides an effective platform for programming dense and sparse numerical algorithms, such as matrix factorization and N-body simulations, and we are working on other types of applications. Unlike many other multithreaded programming systems, Cilk is algorithmic, in that the runtime system employs a scheduler that allows the performance of programs to be estimated accurately based on abstract complexity measures.

Click here for a brief introduction to Cilk. The Cilk-5.4.6 Reference Manual contains a programming guide with a short tutorial on the Cilk language.

Cilk Spin-off!

MIT has licensed Cilk technology to Cilk Arts, Inc.of Lexington, MA, a venture-funded start-up founded by Charles E. Leiserson and Matteo Frigo. Cilk Arts is developing Cilk++, a quantum improvement over MIT Cilk, which includes full support for C++, parallel loops, and superior interoperability with serial code.

HPC Challenge Award

Our Cilk entry for the HPC Challenge Class 2 award won the 2006 award for ``Best Combination of Elegance and Performance''. The award was made at SC'06 in Tampa on November 14 2006.

Authors:

Cilk was developed by the MIT CSAIL Supercomputing Technologies Group under the leadership of prof. Charles Leiserson.

Software:

Cilk-5.4.6 is the latest official Cilk release.

User Survey

Please take a few moments to tell us about your interest in and experiences with Cilk.

Documentation:

Acknowledgements

The Cilk project is supported in part by NSF Grant E1A-9975036. Previous support was provided in part by DARPA Grant F30602-97-1-0270.

Feedback

If you have comments, questions, or suggestions regarding Cilk, please email Matteo Frigo


This page maintained by: Matteo Frigo. Last updated: Tue Oct 23 16:15:15 2007 EDT