- Intel Cilk Plus
-
Cilk Plus Paradigm(s) imperative (procedural), structured, parallel Appeared in 2010 Designed by Intel Developer Intel Stable release Parallel Studio 2010 (September 2, 2010 )Typing discipline static, weak, manifest Influenced by C, Cilk Website Intel Cilk Plus is an extension to the C and C++ programming languages, designed for multithreaded parallel computing.
On July 31, 2009, Cilk Arts, producers of the Cilk++ programming language, announced that its products and engineering team were now part of Intel Corp. Intel and Cilk Arts integrated and advanced the technology further resulting in a September 2010 release of Intel Cilk Plus.[1][2] Intel Cilk Plus adopts simplifications, proposed by Cilk Arts in Cilk++, to eliminate the need for several of the original Cilk keywords while adding the ability to spawn functions and to deal with variables involved in reduction operations. Intel Cilk Plus differs from Cilk and Cilk++ by adding array extensions, being incorporated in a commercial compiler (from Intel), and compatibility with existing debuggers.[3] Intel has stated its desire to refine Cilk Plus and to enable it to be implemented by other compilers to gain industry wide adoption.[4] In November 2010, Intel published a language specification and an ABI specification to enable other compilers to implement Cilk Plus and to optionally utilize the Intel runtime.[5]
The Cilk Plus C and C++ extensions have also been implemented in the GCC compiler.[6] The implementation is currently maintained by Intel and has not been included yet in any officially released GCC version.
As of August 2011, Intel has announced [7] that it is maintaining Cilk Plus as a branch of GCC 4.7. The runtime is available dual-licenced, including BSD-3.
Cilk Plus offers a number of improvements over OpenMP, for example guaranteed maximum memory usage scaling.[8]
See also
- Cilk
- CilkChess
- Intel Array Building Blocks
- Intel Concurrent Collections
- Intel Parallel Building Blocks
- Intel Parallel Studio
- Intel Software Network (support and discussion)
- Intel Threading Building Blocks
- Parallel computing
References
- ^ "Intel Flexes Parallel Programming Muscles", HPCwire (2010-09-02). Retrieved on 2010-09-14.
- ^ "Parallel Studio 2011: Now We Know What Happened to Ct, Cilk++, and RapidMind", Dr. Dobbs Journal (2010-09-02). Retrieved on 2010-09-14.
- ^ "Intel Cilk Plus: A quick, easy and reliable way to improve threaded performance", Intel. Retrieved on 2010-09-14.
- ^ "Cilk™ Plus specification and runtime ABI freely available for download", James Reinders. Retrieved on 2010-11-03.
- ^ "Intel® Cilk™ Plus Language Specification and Application Binary Interface Specification", Intel. Retrieved on 2010-11-03.
- ^ "Easy Parallel Programming: Cilk Plus Ported To GCC"
- ^ "Intel Cilk Plus Open Source", Intel. Retrieved on 2011-08-17.
- ^ http://www.multicoreinfo.com/2009/02/cilk-vs-openmp/
External links
Parallel computing General Levels Threads Theory Elements Coordination Multiprocessing · Multithreading (computer architecture) · Memory coherency · Cache coherency · Cache invalidation · Barrier · Synchronization · Application checkpointingProgramming Hardware Multiprocessor (Symmetric · Asymmetric) · Memory (NUMA · COMA · distributed · shared · distributed shared) · SMT
MPP · Superscalar · Vector processor · Supercomputer · BeowulfAPIs Ateji PX · POSIX Threads · OpenMP · OpenHMPP · PVM · MPI · UPC · Intel Threading Building Blocks · Boost.Thread · Global Arrays · Charm++ · Cilk · Co-array Fortran · OpenCL · CUDA · Dryad · DryadLINQProblems Embarrassingly parallel · Grand Challenge · Software lockout · Scalability · Race conditions · Deadlock · Livelock · Deterministic algorithm · Parallel slowdown
Categories:- Concurrent programming languages
- C programming language family
- Intel products
Wikimedia Foundation. 2010.