
Tools to help you work with Intel Cilk Plus code.
Copies of libelf.so and libdwarf.so for use with Cilkscreen and Cilkview, along with the LGPL-required license agreement and pointer to the sources that match these binaries.
Code contributed by the community to the Cilk Plus project.
Cilkpub is a library of community-contributed Cilk Plus code. The current package (version 1.02) contains the sources for two modules: parallel sorting, and the DotMix DPRNG. See the announcement in the Intel® Cilk™ Plus forum for additional details.
DotMix is a deterministic parallel random number generator for Cilk Plus. This library is based on research conducted at MIT, as described in Deterministic parallel random-number generation for dynamic-multithreading platforms. This code relies on pedigrees, a feature supported by compilers implementing Cilk Plus as described in ABI document version 1.1 or later. This package contains Version 1.01 of DotMix. The most recent version of DotMix is now included as part of Cilkpub.
libzca provides a framework for accessing metadata in a PIN tool. libzca is shipped as source and requires that you download the PIN dynamic binary instrumentation tool separately. PIN is available from http://www.pintool.org.
The libzca kit includes the full source for the cilkprof tool. cilkprof is an extension of the Intel Cilk view scalability analyzer. cilkprof provides work and span values on a per-function basis.
Code snippets, examples, & samples to help you become familiar with Cilk Plus.
Contributions are welcome! Please submit your code using the Submit Contribution page.
Example code from Structured Parallel Programming by Michael McCool, Arch Robison, James Reinders.
This text offers a way to learn parallel programming for any C or C++ programmer, in a manner that will be highly effective because it teaches the most important and successful parallel programming strategies. Examples are in both Cilk Plus and TBB, and the patterns apply to other parallel frameworks.
Updated versions of the code may be available at the Downloads tab of the Structured Parallel Programming website.
A tarball containing all of the sources from the Cilk Plus tutorial.
22-Apr-2013 - Updated with sample programs to demonstrate the use of the reducers provided in the Cilk Reducer Library.
Calculation of a Fibonacci number in parallel. While this is certainly not the best possible way to calculate a Fibonacci number, it provides a simple demonstration of using cilk_spawn and cilk_sync to parallelize a recursive algorithm.
Intel Cilk Plus is an essential tool to implement parallelism. As the first step towards our commitment for broad adoption of Cilk Plus, we are making public the language specification that includes both our simple keywords and array notations. These specifications are designed to help other compiler developers implement Cilk Plus for their platforms.
Source for the Intel Cilk Plus runtime. These sources can be used to build the Linux* and OS X* versions of the runtime.
Building the Cilk Plus runtime requires the following prerequisites:
Directions on how to build the runtime are in the "readme" file.
Latest (3-May-2013) Cilk Plus Runtime sources.
Cilk Plus Runtime sources to match the Intel® Composer XE 2013, Update 1 release.
Cilk Plus Runtime sources to match the Intel® Composer XE 2011 SP1, Update 11 release.