NVIDIA Eyes Post-CUDA Era of GPU Computing

By Michael Feldman

December 7, 2011

Lost in the flotilla of vendor news at the Supercomputing Conference (SC11) in Seattle last month was the announcement of a new directives-based parallel programming standard for accelerators.  Called OpenACC, the open standard is intended to bring GPU computing into the realm of the average programmer, while making the resulting code portable across other accelerators and even multicore CPUs.

For obvious reasons, OpenACC is being heavily promoted and supported by NVIDIA, but it is The Portland Group (PGI) and Cray who are driving the early effort to commercialize the technology. PGI already has implemented a very similar a set of accelerator directives, which became part of the foundation for the OpenACC standard. Cray is developing its own OpenACC compiler and its XK6 customers, like Oak Ridge National Lab and the Swiss National Supercomputing Centre, are expected to be among the first supercomputer users of the technology

In a nutshell, OpenACC directives work much the same as OpenMP directives, but are specifically applicable to highly data parallel codes.  They can be inserted into standard C, C++ and Fortran programs to direct the compiler to parallelize certain code sections.  The compiler takes care of the logistics of moving data back and forth between the CPU and the GPU (or whatever) and mapping the computation onto the appropriate processor.

The idea is to enable developers to make relatively small modifications to existing (or new) code in order to expose  parallel regions for acceleration.  Since the directives are designed to apply to a generic parallel processor, the same code can run on a multicore CPU, GPU, or any other type of parallel hardware that is supported by the compiler.  This hardware independence is especially important to the HPC community, which is loathe to adopt vendor-specific, non-portable programming environments.

From NVIDIA’s perspective, the overriding goal is to bring GPU computing into the post-CUDA age.  CUDA C and Fortran are the most widely used programming languages for GPU programming today, but the underlying technology is proprietary to NVIDIA and offers a relatively low-level software model of GPU computing. As a result, the use of CUDA today tends to be restricted to computer science types, rather than the average programmer or researcher.

OpenCL, which is supported by NVIDIA, AMD and many others, also provides a parallel programming framework for GPUs and other accelerators, and unlike CUDA, is a bona fide open standard (under the direction of the Khronos Group — the same organization that brought us OpenGL).  But like CUDA, OpenCL is relatively low-level, requiring a fairly intimate knowledge of the inner workings of the target processor.  Therefore, like CUDA, use of OpenCL is mostly confined to computer scientists.

NVIDIA estimates there are over 100,000 CUDA programmers on the planet and a substantially smaller number of OpenCL developers, but they see a much larger potential audience if they can make GPU programming more open and developer-friendly.  Essentially they believe OpenACC will be able to make GPU technology accessible to the millions of scientists and researchers who don’t care to dabble in the low-level intricacies of processor architectures and chip-to-chip communications.

Steve Scott, CTO of NVIDIA’s Tesla business unit, sums up the goal of OpenACC thusly: “What we’d like to do at this point is to substantially increase the breadth of applicability and the number of people using GPUs.”

According to Scott, the high-level nature of OpenACC is not going to impact execution performance significantly. While in his previous CTO role at Cray, he encountered accelerator directives-based codes that were getting within 5 or 10 percent of the performance of hand-coded CUDA.  According to him, that was fairly typical.  Some applications, Scott says, were even doing better than their CUDA alternates, thanks to the ability of the compiler to optimize certain codes beyond what mere mortals could achieve. In any case, OpenACC is designed to be interoperable with CUDA, so hand-tuned kernels can work seamlessly with directives-based code if need be.

Besides PGI and Cray, CAPS enterprise, a French developer of multicore software tools, has also signed up to support the new directives.  All three vendors are expected to have compilers with OpenACC support ready in the first half of 2012.  Notably missing from the list of OpenACC supporters are Intel and AMD, although both have processors (multicore x86, AMD APUs and GPUs, and the Intel MIC) that would certainly be capable targets. That wouldn’t necessarily stop PGI, CAPS, or Cray from building OpenACC-enabled compilers for Intel and AMD hardware, however.

PGI and NVIDIA are in the process of running a free 30-day trial for developers interested in kicking the tires on PGI’s current accelerator directive compiler. The claim is that the technology will at least double application performance with less than 4 weeks of developer effort. Hundreds of researchers have already registered for the trial and this week NVIDIA has reported some initial results. At least one developer was able to get a 5X performance boost on his application after just a single day of tweaking the code.

But the real end game for OpenACC supporters is for the directives to be incorporated into the OpenMP standard.  Since OpenACC was derived from work done within the OpenMP Working Group on Accelerators, it stands to reason that this will indeed happen. Although there is no timeline for when the technology will be folded into OpenMP, it’s most likely to be occur in conjunction with the release of OpenMP 4.0, which is expected to be launched sometime in 2012.

Subscribe to HPCwire's Weekly Update!

Be the most informed person in the room! Stay ahead of the tech trends with industy updates delivered to you every week!

Nvidia Debuts Turing Architecture, Focusing on Real-Time Ray Tracing

August 16, 2018

From the SIGGRAPH professional graphics conference in Vancouver this week, Nvidia CEO Jensen Huang unveiled Turing, the company's next-gen GPU platform that introduces new RT Cores to accelerate ray tracing and new Tenso Read more…

By Tiffany Trader

HPC Coding: The Power of L(o)osing Control

August 16, 2018

Exascale roadmaps, exascale projects and exascale lobbyists ask, on-again-off-again, for a fundamental rewrite of major code building blocks. Otherwise, so they claim, codes will not scale up. Naturally, some exascale pr Read more…

By Tobias Weinzierl

STAQ(ing) the Quantum Computing Deck

August 16, 2018

Quantum computers – at least for now – remain noisy. That’s another way of saying unreliable and in diverse ways that often depend on the specific quantum technology used. One idea is to mitigate noisiness and perh Read more…

By John Russell

HPE Extreme Performance Solutions

Introducing the First Integrated System Management Software for HPC Clusters from HPE

How do you manage your complex, growing cluster environments? Answer that big challenge with the new HPC cluster management solution: HPE Performance Cluster Manager. Read more…

IBM Accelerated Insights

Super Problem Solving

You might think that tackling the world’s toughest problems is a job only for superheroes, but at special places such as the Oak Ridge National Laboratory, supercomputers are the real heroes. Read more…

NREL ‘Eagle’ Supercomputer to Advance Energy Tech R&D

August 14, 2018

The U.S. Department of Energy (DOE) National Renewable Energy Laboratory (NREL) has contracted with Hewlett Packard Enterprise (HPE) for a new 8-petaflops (peak) supercomputer that will be used to advance early-stage R&a Read more…

By Tiffany Trader

STAQ(ing) the Quantum Computing Deck

August 16, 2018

Quantum computers – at least for now – remain noisy. That’s another way of saying unreliable and in diverse ways that often depend on the specific quantum Read more…

By John Russell

NREL ‘Eagle’ Supercomputer to Advance Energy Tech R&D

August 14, 2018

The U.S. Department of Energy (DOE) National Renewable Energy Laboratory (NREL) has contracted with Hewlett Packard Enterprise (HPE) for a new 8-petaflops (peak Read more…

By Tiffany Trader

CERN Project Sees Orders-of-Magnitude Speedup with AI Approach

August 14, 2018

An award-winning effort at CERN has demonstrated potential to significantly change how the physics based modeling and simulation communities view machine learni Read more…

By Rob Farber

Intel Announces Cooper Lake, Advances AI Strategy

August 9, 2018

Intel's chief datacenter exec Navin Shenoy kicked off the company's Data-Centric Innovation Summit Wednesday, the day-long program devoted to Intel's datacenter Read more…

By Tiffany Trader

SLATE Update: Making Math Libraries Exascale-ready

August 9, 2018

Practically-speaking, achieving exascale computing requires enabling HPC software to effectively use accelerators – mostly GPUs at present – and that remain Read more…

By John Russell

Summertime in Washington: Some Unexpected Advanced Computing News

August 8, 2018

Summertime in Washington DC is known for its heat and humidity. That is why most people get away to either the mountains or the seashore and things slow down. H Read more…

By Alex R. Larzelere

NSF Invests $15 Million in Quantum STAQ

August 7, 2018

Quantum computing development is in full ascent as global backers aim to transcend the limitations of classical computing by leveraging the magical-seeming prop Read more…

By Tiffany Trader

By the Numbers: Cray Would Like Exascale to Be the Icing on the Cake

August 1, 2018

On its earnings call held for investors yesterday, Cray gave an accounting for its latest quarterly financials, offered future guidance and provided an update o Read more…

By Tiffany Trader

Leading Solution Providers

SC17 Booth Video Tours Playlist

Altair @ SC17

Altair

AMD @ SC17

AMD

ASRock Rack @ SC17

ASRock Rack

CEJN @ SC17

CEJN

DDN Storage @ SC17

DDN Storage

Huawei @ SC17

Huawei

IBM @ SC17

IBM

IBM Power Systems @ SC17

IBM Power Systems

Intel @ SC17

Intel

Lenovo @ SC17

Lenovo

Mellanox Technologies @ SC17

Mellanox Technologies

Microsoft @ SC17

Microsoft

Penguin Computing @ SC17

Penguin Computing

Pure Storage @ SC17

Pure Storage

Supericro @ SC17

Supericro

Tyan @ SC17

Tyan

Univa @ SC17

Univa

  • arrow
  • Click Here for More Headlines
  • arrow
Do NOT follow this link or you will be banned from the site!
Share This