OpenACC Broadens Appeal with GCC Compiler Support

By Nicole Hemsoth

November 14, 2013

As the non-profit standards group behind the push for wider adoption via easier use of accelerators, OpenACC has quite a big job ahead. Although analysts agree that accelerators sit along a comfortable adoption curve, usability, programmability and portability are key concerns, among others.

Over the last couple of years, OpenACC has worked with user groups across academia and industry to understand what is still needed for healthier adoption of accelerators via workshops and meetings, which has produced a number of the core improvements that are available within the 2.0 spec (procedure calls, nested parallelism, more dynamic data management support and more). On top of that, the ecosystem is also rounded out by CAPS, PGI and Cray, in particular, as well as being supported by x86 and ARM vendors (and of course the accelerators from all the major players).

Of course, one of the main questions was whether the OpenACC group would be able to offer a free implementation and whether they would open source OpenACC (not the same thing, as we know). Today the group spoke to those requests by announcing that one of its new members (in addition to Louisiana State University and NOAA as of this week), Mentor Graphics, has developed OpenACC extensions that will be supported in mainstream GCC compilers.

Mentor Graphics’ Nathan Sidwell told us that this came about following their acquisition of Code Sourcery, which has a long history of producing GCC-based toolchains for Linux and embedded systems. Mentor is working on implementing OpenACC 2.0 in the GCC toolchain, which will be rolled out over the next year, making an open source implementation of OpenACC available to all users who have Linux systems. Sidwell said that they are leveraging some of the existing infrastructure in GCC for accelerated computing, but how different implementations will converge is undecided at this point as it will be up to distributors of Linux systems how they configure GCC for their offerings.

As OpenACC President, Duncan Poole, said of this development, it breaks OpenACC out of a niche where users had to make a distinct decision to go their route.  “The addition of an open source platform is critical for the broader range of heterogeneous programming that will be necessary for the next stage of growth and innovation in HPC and as a foundation to drive software development for exascale systems.”

The non-profit wants to move accelerator use for clusters beyond computer science realms and open it to a wider set of users whose background might have little to do with programming for GPUs or other accelerators. To address those users, Poole says there needs to be support for legacy applications (those that are written in Fortran, for example, or by someone who is no longer with an organization or even those that were collaboratively developed). Users with these applications usually need a way of supporting new features but don’t require custom code paths for special features, says Poole, and this is where the benefit of OpenACC can be keenly felt.

OpenACC has been in 1.0 for a couple of years with the 2.0 spec released over the summer. Since then, as mentioned, there are three commercial implementations, all of which are starting to roll out their own 2.0 implementations (Cray with their 8.2 release recently, CAPS with their announcement of full OpenACC in December and PGI in the near term with their 2014 release in January). In addition to offering key features, the most important of which are procedure calls, Michael Wolfe of PGI (recently acquired by NVIDIA) and secretary of OpenACC says they’re using feedback to address a few other issues.

Screen shot 2013-11-14 at 9.48.51 AM

The main goal is to preserve the readability of these programs and ensure cross-platform compatibility. For OpenACC to provide this, the focus is on directives—a familiar programming model that can handle a number of elements that don’t require the end user to have a deep understanding of CUDA or OpenCL. They can then do things like allocate data on the accelerator, transfer data that’s been on the host to the booster, perform a series of operations on the accelerator and then return results back to program with far more transparency than was possible before.

“All the OpenACC vendors have experienced increasing experimentation and adoption of OpenACC on a variety of applications, including weather, computational chemistry, fluid flow simulation, combustion, and many more,” said Wolfe.  “We have been getting very useful feedback from the users to drive improvements to the specification and implementations that will deliver better performance as well as overall enhanced user experience.”

As Wolfe told us, “One of the most important features for C and C++ code would be arrays in C++ classes or C structs or Fortran derived types—these are structured data types that have array members, but right now the spec has no standard way to support that and the implementations are weak in that area—so we’re working hard to make that work, in particular for C++. We undertand that C++ is a large language and has some unique features so we’re working hard with feedback to make sure we support that in a natural and satisfying manner for those many users.”

Wolfe said that without a doubt, the top feedback from their workshops and analysis is not really a surprise—“for C++ you really have to support classes and templated classes and class members that are arrays because that’s how those programs are written. That also appears in Fortran, but not as pervasive as in C++.”

In agreement with these workshops findings is one of the core contributors to OpenACC efforts, Oak Ridge National Lab. With Titan in full production and a whole new set of users porting their codes, the lab has been keen to ensure that OpenACC is stable enough to support the next class of applications being onboarded—not to mention serving as a testbed for what might be viable for exascale-class systems.

As Dr. Oscar Hernandez, Research Staff Scientist at ORNL (and OpenACC Director of Developer Adoption) told us, OpenACC is very important because it allows ORNL to program heterogeneous systems with a single programming model that lets his teams address multiple architectures with different types of memory. “It’s important for us also because it’s a way to maintain portability in our codes and at the same time take advantage of leadership-class systems at ORNL that rely on accelerators. OpenACC offers a solution that works today and is friendly to the programmer–Open source efforts also help us drive and understand more the application needs and to do research and improve and understand what we need to do to build an ecosystem aroud OpenACC in addition we like the fact that it works now and can move fast and meet more app needs as of today.”

The group will have its first booth ever at SC13, which will be manned by various members of the organization. Some schedule highlights below for those interested in this track. We shall see you there…

OpenACCatSC

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!

Data Vortex Users Contemplate the Future of Supercomputing

October 19, 2017

Last month (Sept. 11-12), HPC networking company Data Vortex held its inaugural Users Group at Pacific Northwest National Laboratory (PNNL) bringing together about 30 participants from industry, government and academia t Read more…

By Tiffany Trader

AI Self-Training Goes Forward at Google DeepMind

October 19, 2017

Imagine if all the atoms in the universe could be added up into a single number. Big number, right? Maybe the biggest number conceivable. But wait, there’s a bigger number out there. We're told that Go, the world’s Read more…

By Doug Black

Researchers Scale COSMO Climate Code to 4888 GPUs on Piz Daint

October 17, 2017

Effective global climate simulation, sorely needed to anticipate and cope with global warming, has long been computationally challenging. Two of the major obstacles are the needed resolution and prolonged time to compute Read more…

By John Russell

HPE Extreme Performance Solutions

Transforming Genomic Analytics with HPC-Accelerated Insights

Advancements in the field of genomics are revolutionizing our understanding of human biology, rapidly accelerating the discovery and treatment of genetic diseases, and dramatically improving human health. Read more…

Student Cluster Competition Coverage New Home

October 16, 2017

Hello computer sports fans! This is the first of many (many!) articles covering the world-wide phenomenon of Student Cluster Competitions. Finally, the Student Cluster Competition coverage has come to its natural home: H Read more…

By Dan Olds

Data Vortex Users Contemplate the Future of Supercomputing

October 19, 2017

Last month (Sept. 11-12), HPC networking company Data Vortex held its inaugural Users Group at Pacific Northwest National Laboratory (PNNL) bringing together ab Read more…

By Tiffany Trader

AI Self-Training Goes Forward at Google DeepMind

October 19, 2017

Imagine if all the atoms in the universe could be added up into a single number. Big number, right? Maybe the biggest number conceivable. But wait, there’s a Read more…

By Doug Black

Student Cluster Competition Coverage New Home

October 16, 2017

Hello computer sports fans! This is the first of many (many!) articles covering the world-wide phenomenon of Student Cluster Competitions. Finally, the Student Read more…

By Dan Olds

Intel Delivers 17-Qubit Quantum Chip to European Research Partner

October 10, 2017

On Tuesday, Intel delivered a 17-qubit superconducting test chip to research partner QuTech, the quantum research institute of Delft University of Technology (TU Delft) in the Netherlands. The announcement marks a major milestone in the 10-year, $50-million collaborative relationship with TU Delft and TNO, the Dutch Organization for Applied Research, to accelerate advancements in quantum computing. Read more…

By Tiffany Trader

Fujitsu Tapped to Build 37-Petaflops ABCI System for AIST

October 10, 2017

Fujitsu announced today it will build the long-planned AI Bridging Cloud Infrastructure (ABCI) which is set to become the fastest supercomputer system in Japan Read more…

By John Russell

HPC Chips – A Veritable Smorgasbord?

October 10, 2017

For the first time since AMD's ill-fated launch of Bulldozer the answer to the question, 'Which CPU will be in my next HPC system?' doesn't have to be 'Whichever variety of Intel Xeon E5 they are selling when we procure'. Read more…

By Dairsie Latimer

Delays, Smoke, Records & Markets – A Candid Conversation with Cray CEO Peter Ungaro

October 5, 2017

Earlier this month, Tom Tabor, publisher of HPCwire and I had a very personal conversation with Cray CEO Peter Ungaro. Cray has been on something of a Cinderell Read more…

By Tiffany Trader & Tom Tabor

Intel Debuts Programmable Acceleration Card

October 5, 2017

With a view toward supporting complex, data-intensive applications, such as AI inference, video streaming analytics, database acceleration and genomics, Intel i Read more…

By Doug Black

How ‘Knights Mill’ Gets Its Deep Learning Flops

June 22, 2017

Intel, the subject of much speculation regarding the delayed, rewritten or potentially canceled “Aurora” contract (the Argonne Lab part of the CORAL “ Read more…

By Tiffany Trader

Reinders: “AVX-512 May Be a Hidden Gem” in Intel Xeon Scalable Processors

June 29, 2017

Imagine if we could use vector processing on something other than just floating point problems.  Today, GPUs and CPUs work tirelessly to accelerate algorithms Read more…

By James Reinders

NERSC Scales Scientific Deep Learning to 15 Petaflops

August 28, 2017

A collaborative effort between Intel, NERSC and Stanford has delivered the first 15-petaflops deep learning software running on HPC platforms and is, according Read more…

By Rob Farber

Oracle Layoffs Reportedly Hit SPARC and Solaris Hard

September 7, 2017

Oracle’s latest layoffs have many wondering if this is the end of the line for the SPARC processor and Solaris OS development. As reported by multiple sources Read more…

By John Russell

US Coalesces Plans for First Exascale Supercomputer: Aurora in 2021

September 27, 2017

At the Advanced Scientific Computing Advisory Committee (ASCAC) meeting, in Arlington, Va., yesterday (Sept. 26), it was revealed that the "Aurora" supercompute Read more…

By Tiffany Trader

Google Releases Deeplearn.js to Further Democratize Machine Learning

August 17, 2017

Spreading the use of machine learning tools is one of the goals of Google’s PAIR (People + AI Research) initiative, which was introduced in early July. Last w Read more…

By John Russell

GlobalFoundries Puts Wind in AMD’s Sails with 12nm FinFET

September 24, 2017

From its annual tech conference last week (Sept. 20), where GlobalFoundries welcomed more than 600 semiconductor professionals (reaching the Santa Clara venue Read more…

By Tiffany Trader

Graphcore Readies Launch of 16nm Colossus-IPU Chip

July 20, 2017

A second $30 million funding round for U.K. AI chip developer Graphcore sets up the company to go to market with its “intelligent processing unit” (IPU) in Read more…

By Tiffany Trader

Leading Solution Providers

Amazon Debuts New AMD-based GPU Instances for Graphics Acceleration

September 12, 2017

Last week Amazon Web Services (AWS) streaming service, AppStream 2.0, introduced a new GPU instance called Graphics Design intended to accelerate graphics. The Read more…

By John Russell

Nvidia Responds to Google TPU Benchmarking

April 10, 2017

Nvidia highlights strengths of its newest GPU silicon in response to Google's report on the performance and energy advantages of its custom tensor processor. Read more…

By Tiffany Trader

EU Funds 20 Million Euro ARM+FPGA Exascale Project

September 7, 2017

At the Barcelona Supercomputer Centre on Wednesday (Sept. 6), 16 partners gathered to launch the EuroEXA project, which invests €20 million over three-and-a-half years into exascale-focused research and development. Led by the Horizon 2020 program, EuroEXA picks up the banner of a triad of partner projects — ExaNeSt, EcoScale and ExaNoDe — building on their work... Read more…

By Tiffany Trader

Delays, Smoke, Records & Markets – A Candid Conversation with Cray CEO Peter Ungaro

October 5, 2017

Earlier this month, Tom Tabor, publisher of HPCwire and I had a very personal conversation with Cray CEO Peter Ungaro. Cray has been on something of a Cinderell Read more…

By Tiffany Trader & Tom Tabor

Cray Moves to Acquire the Seagate ClusterStor Line

July 28, 2017

This week Cray announced that it is picking up Seagate's ClusterStor HPC storage array business for an undisclosed sum. "In short we're effectively transitioning the bulk of the ClusterStor product line to Cray," said CEO Peter Ungaro. Read more…

By Tiffany Trader

Intel Launches Software Tools to Ease FPGA Programming

September 5, 2017

Field Programmable Gate Arrays (FPGAs) have a reputation for being difficult to program, requiring expertise in specialty languages, like Verilog or VHDL. Easin Read more…

By Tiffany Trader

IBM Advances Web-based Quantum Programming

September 5, 2017

IBM Research is pairing its Jupyter-based Data Science Experience notebook environment with its cloud-based quantum computer, IBM Q, in hopes of encouraging a new class of entrepreneurial user to solve intractable problems that even exceed the capabilities of the best AI systems. Read more…

By Alex Woodie

Intel, NERSC and University Partners Launch New Big Data Center

August 17, 2017

A collaboration between the Department of Energy’s National Energy Research Scientific Computing Center (NERSC), Intel and five Intel Parallel Computing Cente Read more…

By Linda Barney

  • arrow
  • Click Here for More Headlines
  • arrow
Share This