Cilk FAQ - Section 1
Introduction and General Information


Question 1.1. What is 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. Cilk has been developed since 1994 by the Supercomputing Technologies Group at the MIT Laboratory for Computer Science. Cilk has been used for research, teaching, and for coding applications such as a virus shell assembly simulator and three chess programs.

Question 1.2. How do I obtain Cilk?

Official versions of Cilk can be found at the Cilk web page

We briefly used SourceForge, but they don't know how to stop SPAM, and eventually gave up.

Question 1.3. Are there Cilk-related mailing lists?

Yes. Look for Cilk at SourceForge (www.sourceforge.net). Three mailing lists exist:

Question 1.4. Is Cilk free software?

Starting with version 5.3, Cilk is Free Software in the technical sense defined by the Free Software Foundation (see Categories of Free and Non-Free Software), and is distributed under the terms of the GNU General Public License. Previous versions of Cilk were distributed without fee for noncommercial use, but were not technically ``free.''

Question 1.5. Which systems does Cilk run on?

The current Cilk-5.3 system runs on systems that support POSIX threads. In particular, Cilk has been installed successfully on GNU/Linux, Solaris, IRIX, Digital Unix, and MacOS X.

Cilk requires certain system software in order to run. In particular, it requires a recent gcc, GNU make, and preferably the GNU linker. GNU/Linux systems are usually distributed with all these tools. Cilk should also work on other systems (*BSD etc.) whenever the appropriate tools are installed. If you successfully compile Cilk on these systems, please contact me bradley@mit.edu so that I can update this FAQ.

Cilk-5.3 supports IA-32 (x86), IA-64 (Itanium), AMD64 (x86-64) PowerPC, SPARC, MIPS, and Alpha processors. Porting to other processors is not difficult. Please contact cilk-support@lists.sourceforge.net if you are interested in running Cilk on other machines.

Question 1.6. Does Cilk run on networks of workstations?

Cilk-5.3 does not run on distributed-memory machines. Keith Randall wrote a distributed-memory variant of Cilk-5.1 as part of his Ph. D. thesis. See the Cilk web page for a copy of the thesis and for downloading the distributed-memory Cilk version. Be warned that this version is experimental and it has not been updated in a long time.

Question 1.7. Does Cilk run on Windows NT?

Please do not send questions about Windows NT to the cilk-support mailing list, because the Cilk maintainer does not know anything about this system.

Question 1.8. What is Cilkchess?

Cilkchess is a chess program written in Cilk. Cilkchess and Cilk are two distinct things. Cilkchess has never been released, and it is not part of the Cilk distribution. For more information about Cilkchess, contact its author Don Dailey drd@supertech.lcs.mit.edu.
Next: Installing Cilk.
Return to contents.

Bradley C. Kuszmaul / bradley@mit.edu - 27 January 2013

Extracted from Cilk Frequently Asked Questions with Answers, Copyright © 2013 Bradley C. Kuszmaul.