HAMBURG, Germany — ISC’12— June 20 — The OpenACC standards group today announced broad new support for the OpenACC parallel programming standard by technology providers and leading research institutions, as well as new results highlighting the tremendous benefits of using OpenACC for engineering and scientific applications.
OpenACC is a programming standard for parallel computing using directives, designed to enable millions of scientists around the world to easily take advantage of the transformative power of computing systems equipped with heterogeneous CPU/GPU systems. OpenACC provides the easiest way for scientists, with or without extensive parallel programming expertise, to accelerate their research in a matter of hours using familiar programming models.
“OpenACC is quickly becoming one of the industry’s preferred parallel programming solutions for accelerators,” said Duncan Poole, president of the OpenACC Standards Group. “With support in the works for platforms from AMD and Intel, coupled with growing support by leading software tools, using OpenACC produces more portable and familiar code, making it faster and easier for developers to accelerate for a broader range of scientific and engineering applications.”
Accelerating Research, Engineering with OpenACC
A large and growing number programmers, scientists and engineers are using OpenACC supported compilers and software tools to accelerate all types of applications. In many cases, developers are reporting that they have achieved significant levels of acceleration with a minimal degree of effort. Recent examples include:
- DNA sequencing analysis: 16x acceleration – Researchers at Shanghai JiaoTong University accelerated DNADist, a widely used application to study how gene functions vary across populations and species, by 16x by adding only four OpenACC directives to the code which contains over 7500 lines (1)
- Real time financial derivative valuation: 70x acceleration – After only a few hours of work, a developer at Opel Blue accelerated their proprietary application by tremendous 70x, pushing them closer to real time pricing of complex financial derivatives for trading and risk management (2)
- Image processing/analytics: 4x acceleration – Aselsan accelerated its real time image preprocessing application, which enables stitching multiple frames to compare images, by more than 4x by adding only three directives (3)
“With OpenACC, I quickly did a proof of concept analysis without having to undertake major changes to the existing system architecture,” said Faramarz Shemirani, Quant system developer at Opel Blue Ltd. “Now I can parallelize the complete task of pricing derivatives by running the required number of kernels simultaneously. If this can be done in near real time, there is a huge benefit for the financial industry by enabling traders to accurately and efficiently price and trade these complex instruments.”
Support for Multiple Accelerator Platforms
OpenACC support for NVIDIA GPUs is now available in production compiler products from Cray, The Portland Group (PGI) and CAPS enterprise.
In addition, at ISC’12 in Hamburg, Germany this week, CAPS announced the 3.1.1 release of its HMPP Workbench compiler, and demonstrated the same OpenACC directives compiled to run on NVIDIA, AMD and Intel accelerators at their booth at ISC this week (Booth # 840). CAPS compilers now give programmers broad flexibility to accelerate applications on the hardware platform of their choice.
The Portland Group also announced that production support for the OpenACC 1.0 standard will be included in the 12.6 release of its PGI Accelerator compiler products.
Research, Supercomputing Leaders Join OpenACC
A number of leading research institutions, supercomputing centers and technology developers have pledged their commitment to the OpenACC programming model. These include:
- Allinea Software
- Georgia Institute of Technology
- Oak Ridge National Laboratory
- Rogue Wave Software
- University of Houston
Joining charter members, CAPS, Cray, PGI, and NVIDIA, these organizations will help determine the strategy and future direction of the OpenACC standard, including best practices for debugging directives, the use of OpenACC at scale, as well as research intended to improve the robustness and performance of OpenACC compilers.
OpenACC compilers are available today from CAPS, Cray and PGI. For more information, visit the CAPS, Cray and PGI websites.
The OpenACC Application Program Interface describes a collection of compiler directives to specify loops and regions of code in standard C and Fortran to be offloaded from a host CPU to an attached accelerator, providing portability across operating systems, host CPUs and accelerators. OpenACC allows programmers to provide simple hints (directives) to the compiler, identifying which areas of code to accelerate. By exposing parallelism to the compiler, directives allow the compiler to do the detailed work of mapping the computation onto the accelerator. OpenACC enables users to create a single code base that runs on heterogeneous many core accelerators as well as multi core systems, making scaling application performance easier and more portable than ever. It also offers an ideal way to preserve investment in legacy applications.
For more information about OpenACC visit the OpenACC.org web site.
(1) CPU: Intel Core i7 920 2.67 GHz, GPU: NVIDIA Tesla C2070, Memory: 12GB; the 44x speed up is compared with the serial version of DNAdist
(2) CPU: single core Intel 2.4 GHz, GPU:NVIDIA Geforce GTX 280, Memory: 4GB RAM, the speed up is compared with the serial version of CPU code
(3) CPU: Intel X5650 2.66Ghz, GPU: NVIDIA GTX 580, the speed up is compared with the serial version of CPU code
About the OpenACC Standards Group
OpenACC is a non profit corporation founded by the group of companies that developed the OpenACC Application Program Interface specification. OpenACC was formed to help create and foster a cross platform API that would allow any scientist or programmer to easily accelerate their application on modern many core and multi core processors using directives. For more information, visit www.openacc.org.
Source: OpenACC Standards Group