In an effort to make it easier for programmers to take advantage of parallel computing, NVIDIA, Cray, the Portland Group (PGI), and CAPS enterprise announced a new parallel-programming standard, known as OpenACC.
Initially developed by PGI, Cray, and NVIDIA, with support from CAPS, OpenACC is a new open parallel programming standard designed to enable the millions of scientific and technical programmers to easily take advantage of the transformative power of heterogeneous CPU/GPU computing systems.
OpenACC allows parallel programmers to provide simple hints, known as "directives," to the compiler, identifying which areas of code to accelerate, without requiring programmers to modify or adapt the underlying code itself. By exposing parallelism to the compiler, directives allow the compiler to do the detailed work of mapping the computation onto the accelerator.
OpenACC is anticipated to benefit a broad range of programmers working in chemistry, biology, physics, data analytics, weather and climate, intelligence, and many other fields. Existing compilers from Cray, PGI and CAPS are expected to provide initial support for the OpenACC standard beginning in the first quarter of 2012. The OpenACC standard is fully compatible and interoperable with the NVIDIA CUDA parallel programming architecture, which is designed to allow detailed control over the accelerator for maximum performance tuning.