It looks like GCC will be supporting both OpenACC and Intel Xeon Phi offload pragmas in future releases. Perhaps the GNU compiler chain will become the melting pot where OpenACC and OpenMP 4.0 pragmas merge to become a single unified syntax.
According to Nathan Sidwell, Director of Sourcery Services at Mentor Embedded, their OpenACC effort is working to “make the underlying implementation as OpenACC 2.0 and OpenMP 4.0 agnostic as possible.” This will eliminate much redundant work and help create a stable implementation for both standards as quickly as possible.
A single unified syntax is beneficial to all, as are the OpenACC and Intel Xeon Phi offload pragma efforts. As I wrote in my Scientific Computing, “Create Mobile to HPC Applications using a Single Source Tree”
Encryption and nuclear weapons are two easily recognized examples where a combinatorial explosion (e.g. a situation where the number of possible combinations grows very rapidly as the number of options increases) is a sought after characteristic. In the software development world, combinatorial explosions are bad. In particular, it is far too easy to become lost in the minutia of writing code that can run efficiently on NVIDIA GPUs, AMD GPUs, x86, ARM and Intel Xeon Phi while also addressing the numerous compiler and user interface vagaries to compile and create user interfaces for Linux, OS X, Windows, iOS and Android devices.
GCC Support for Intel Xeon Phi Offload
Michael Larabel at Phoronix.com noted in his article, “Intel MIC Run-Time Offload Library Close To Entering GCC” that Intel’s Xeon Phi run-time offload library, liboffloadmic, will be added to next year’s release of GCC 4.10:
This month the GCC steering committee approved adding Intel’s offload library to GCC that provides run-time support for their MIC architecture, which is what makes up their high-end “Xeon Phi” hardware.
GCC Support for OpenACC
Expect GNU OpenACC to be available in Q4 of 2014 as an experimental version and will become available after the 4.9 release around 2015.
Demonstrations by PGI (Portland Group) and CAPS Enterprise have shown that a single OpenACC source code can be recompiled to run on the following platforms: