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 Benchmarking Platform
Phoromatic Test Orchestration

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 News
  1. For AMD Users, Linux 4.2 Will Bring The New AMDGPU Driver & VCE1 For Radeon
  2. Atomic Mode-Setting Still Baking For Samsung's Exynos DRM Driver
  3. Ubuntu Phone Update This Month Brings Many Improvements
  4. Fedora's "Fedup" To Be Replaced In Fedora 23
  5. Android M Should Bring Greater Performance & Efficiency
  6. AMD Teases Upcoming Radeon "Fiji" GPU Launch
  7. Dell Makes An Ubuntu Installation Guide, Suggests Users Try It Out
  8. Running Linux On The Intel Compute Stick
  9. AMD Launches The A10-7870K "Godavari" APU
  10. Linux 4.1 Kernel Benchmarks With An Intel Core i7 IVB System
Latest Articles & Reviews
  1. Opening The Gates To Our Daily Open-Source Linux Benchmark Results
  2. The Latest Features For Linux Performance Management + Benchmark Monitoring
  3. Noctua NH-U12DX i4 + NF-F12
  4. Btrfs RAID 0/1 Benchmarks On The Linux 4.1 Kernel
Most Viewed News This Week
  1. The Linux 4.0 EXT4 RAID Corruption Bug Has Been Uncovered
  2. NVIDIA's Proprietary Driver Is Moving Closer With Kernel Mode-Setting
  3. Systemd 220 Has Finally Been Released
  4. Zapcc Claims To Be A "Much Faster C++ Compiler"
  5. LibreOffice 5.0 Beta 1 Released
  6. OpenWRT 15.05 Preparing Improved Security & Better Networking
  7. Features Added To Mesa 10.6 For Open-Source GPU Drivers
  8. Ubuntu's LXD vs. KVM For The Linux Cloud