Intel Cilk Spawn, Sync Merged For The GCC Compiler
The latest Cilk support to land in GCC from the Intel compiler developers for this multi-threaded parallel programming extension are support for the _Cilk_spawn and _Cilk_sync keywords.
Cilk Plus is an extension of C and C++ to offer easy yet powerful multi-core / vector processing programming. There's three Cilk Plus keywords to make parallel programming easier and efficient. Going back to early November there's been the basic support for Intel Cilk Plus inside GCC after the Cilk support was approved by the GCC steering committee the month prior. Since the landing of the initial compiler and run-time support, more GCC Cilk work has been happening.
Committed to the GNU Compiler Collection on Weduesday was support for the _Cilk_spawn and _Cilk_sync keywords. The _Cilk_spawn keyword is for specifying a C/C++ function that can be executed asynchronously so the Intel Cilk Plus runtime can determine whether to run the function in parallel with the caller. The _Cilk_sync keyword holds up the execution of further code until all the Cilk spawned functions have completed.
Overall, GCC 4.9 is in great shape with new parallel programming opportunities presented by Intel Cilk Plus and there's also OpenMP 4.0 support. Out of reach from GCC 4.9 though is the controversial OpenACC GPU support.