1. Computers
  2. Display Drivers
  3. Graphics Cards
  4. Memory
  5. Motherboards
  6. Processors
  7. Software
  8. Storage
  9. Operating Systems


Facebook RSS Twitter Twitter Google Plus


Phoronix Test Suite

OpenBenchmarking.org

Easy Parallel Programming: Cilk Plus Ported To GCC

Compiler

Published on 15 August 2011 06:17 PM EDT
Written by Michael Larabel in Compiler
8 Comments

Early this morning I mentioned some of the features for GCC 4.7 as what one can expect when this next major open-source compiler update is out in a matter of months. There was some speculation in the forums that this article was a preemptive article coming just before a big code drop. As luck would have it, this afternoon there's a big Intel GCC announcement.

Balaji V. Iyer of Intel has announced a port of Intel Cilk Plus to GCC. Intel has landed a branch of GCC (to be merged later, right now the GCC branch is "cilkplus") that ports Cilk Plus language extensions to the C and C++ front-ends of GCC 4.7.

Intel prides Cilk Plus for the ability to write parallel programs using a simple model, utilize data parallelism by simple array notations, leverages existing serial tools, and can scale for the future. From Intel's web-site, "The three Intel Cilk Plus keywords provide a simple yet surprisingly powerful model for parallel programming, while runtime and template libraries offer a well-tuned environment for building parallel applications."

Cilk Plus is a set of C/C++ constructions by Intel for task-parallel and data-parallel programming. These constructs are designed to improve performance on multi-core CPUs in a very easy manner. This parallel programming method is particularly easy with the addition of just three C/C++ keywords.

Cilk Plus was originally released in September of 2010 after Intel's 2009 acquisition of Cilk Arts. In 2010 they also published a language specification and ABI specification so that other compilers could implement Cilk Plus, but now Intel has finally contributed the needed patches to GCC.

Besides patching the C/C++ front-ends, this work also requires a Cilk Plus run-time library, which is part of the new GCC branch and the run-time library is BSD licensed.

For those interested in parallel programming, see the mailing list announcement. To learn more about Cilk Plus, visit CilkPlus.org.

About The Author
Michael Larabel is the principal author of Phoronix.com and founded the web-site in 2004 with a focus on enriching the Linux hardware experience and being the largest web-site devoted to Linux hardware reviews, particularly for products relevant to Linux gamers and enthusiasts but also commonly reviewing servers/workstations and embedded Linux devices. Michael has written more than 10,000 articles covering the state of Linux hardware support, Linux performance, graphics hardware drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated testing software. He can be followed via and or contacted via .
Latest Linux Hardware Reviews
  1. A Walkthrough Of The New 32 System Open-Source Linux Benchmarking Test Farm
  2. Habey MITX-6771: Mini-ITX Board With Quad-Core J1900 Bay Trail
  3. OCZ Vector 150 SSD On Linux
  4. Noctua i4 CPU Cooler: Great For Cooling High-End LGA-2011v3 CPUs
Latest Linux Articles
  1. AMD Kaveri: Open-Source Radeon Gallium3D vs. Catalyst 14.12 Omega Driver
  2. 12-Way AMD Catalyst 14.12 vs. NVIDIA 346 Series Linux GPU Comparison
  3. AMD Catalyst 14.12 Omega Driver Brings Mixed Results For Linux Users
  4. 6-Way Winter 2014 Linux Distribution Comparison
Latest Linux News
  1. Civilization: Beyond Earth Linux GPU/Driver Benchmarks
  2. X.Org Server 1.16.3 Released To Fix Security Issues
  3. Linux 3.19 Merge Window Closes Ahead Of Schedule
  4. MIPS R6 Architecture Now Supported By GCC
  5. LowRISC To Feature Tagged Memory & Minion Cores
  6. Intel Skylake Audio Support For Linux 3.19
  7. After 10+ Years, NetworkManager Reaches v1.0
  8. VDPAU Updated To v0.9
  9. An Open Hardware Random Number Generator Proposed
  10. LLVM 3.6 Will Be Branched Next Month
Latest Forum Discussions
  1. Need some hand holding with upgrading xserver
  2. Are there an app using HSA ?
  3. The New SuperTuxKart Looks Better, But Can Cause GPU/Driver Problems
  4. XLennart: A Game For Systemd Haters With Nothing Better To Do
  5. Updated and Optimized Ubuntu Free Graphics Drivers
  6. Debian init discussion in Phoenix Wright format
  7. FPS capped on Linux (AMD fglrx drivers)
  8. Bench specific mount point