Intel® Advisor Help
Intel® Cilk™ Plus is a parallel programming framework for C or C++ code that helps you harness the performance of multi-core processors. Intel Cilk Plus provides many advantages, including:
Requires few source changes.
Preserves the serial semantics of your program.
Provides powerful hyperobjects, so you can avoid using locks, which can slow parallel execution.
Provides easy support for existing algorithms and data structures.
Eliminates the need for you to worry about explicit scheduling or timing.
Works well in a multi-program environment because it uses work-stealing for efficient scheduling.
Unlike the library approach of Intel TBB, direct compiler support for the Intel Cilk Plus keywords makes it extremely easy to write a parallel program with Intel Cilk Plus. The cost of this simplicity is that Intel Cilk Plus programs must be compiled with a compiler that supports the Intel Cilk Plus keywords, such as the Intel C++ Compiler, certain versions of the GNU* gcc compiler with the Intel Cilk Plus branch, or other compilers (see http://www.cilkplus.org/which-license).
To convert code to Intel Cilk Plus, you add three new keywords to various places in your code, and perhaps change some declarations to use hyperobjects. In contrast, converting code with Intel TBB requires more substantial source code modifications.
If your application is written in C rather than C++, you can use Intel Cilk Plus, OpenMP, or one of the other parallel framework implementations described in Using Other Parallel Frameworks.