A Tale of Two GPU Computing Models

By Michael Feldman

May 26, 2011

There was plenty of GPU computing in the HPC news stream this week, but I’m going to focus on two announcements, since they’re somewhat at odds with each other — but not really.

The first is Cray’s big announcement of its Tesla-equipped XK6 super. The company has been talking up this system up for awhile and finally got the chance to spill the details on it thanks to NVIDIA’s launch last week of the second-generation Fermi GPU technology.

The system is not your garden-variety GPU cluster, though. The XK6 blade is a variant of the XE6 and like its CPU-only sibling is designed to scale well into multi-petaflops territory. A single rack will deliver about 70 teraflops. The blade will actually be using the X2090, a compact form factor variant of the new M2090 part, but the innards are supposedly identical.

Cray, though, is pointing to its software environment as the technology that really makes the XK6 something special. Although NVIDIA’s CUDA SDK comes standard with each system, Cray is also developing its own GPU compiler for C and Fortran, based on OpenMP extensions for accelerators. Their compiler is still in a pre-production state, but Cray will be handing it out to selected customers to kick the tires.

The idea is to provide programmers with a standard directives-based language environment for GPU computing. Since the developer need only insert directives to tell the compiler which pieces need to be GPU-ified, it’s a lot easier to convert existing CPU codes, compared to doing a CUDA port. The resulting directive-enhanced source can then be ported to other accelerator platforms, assuming they support the OpenMP accelerator extensions too. Or the directives can be stripped out if a standard CPU platform is all you have.

Cray is also supporting PGI’s GPU-capable compiler, which is directives-based as well, but it’s not an open standard like OpenMP. PGI and CAPS enterprise (which has its own HMPP directives for GPU computing) could of course adopt the OpenMP accelerator directives, and undoubtedly would do so if that version became the choice of developers. Given that OpenMP has a very strong following in the HPC community, it wouldn’t surprise me if developers opted for this particular solution.

Also, since both PGI and CAPS are on the OpenMP board, I’d venture to say that there will be a meeting of the minds over accelerator directives in the not-too-distant future. By the way, Intel is on the board too, so it’s conceivable that OpenMP acceleration will be supported for the upcoming Knights Ferry MIC processor as well.

The only caveat to a directives-based approach to programming GPU is that of performance. Something like CUDA or OpenCL can get much closer to the silicon and thus offer better performance if you know what you’re doing. The problem is a lot of developers don’t know what they’re doing — as a former software engineer, I say this without blushing — and in any case would prefer not to have to worry about the nitty-gritty details of GPU programming. Also, for the reasons stated above, there are significant advantages to building GPU codes in a high-level, hardware-independent language environment.

Cray is already tuning their OpenMP-based GPU compiler for performance. With their knowledge of all things vector, I expect they’ll eventually get to a happy place performance-wise. Certainly if such a programming model can shave a few months or even a few weeks off of development time, you have a lot more cycles to play with simply because you have a working program in hand.

The second high-profile GPU news item this week involved a successful GPU port of a machine learning algorithm by Pittsburgh Supercomputing Center (PSC) and HP Labs. In this case what I mean by successful is that the researchers achieved a 10X speedup of the algorithm using CUDA and an NVIDIA GPU-based system, compared to the equivalent code targeted for a CPU cluster. The system encompassed three nodes, with three GPUs and two CPUs per node. MPI was used for node-to-node chatter.

The algorithm in question, called k-means clustering, is used in machine learning to uncover patterns or association within large datasets. In this case, they used Google’s “Books N-gram” dataset to cluster all five-word sets of the one thousand most commonly used words occurring in all books published in 2005. With their GPU implementation, the researchers were able to cluster the entire dataset (15 million data points and 1000 dimensions) in less than nine seconds.

While that particular application might not be the most useful one ever invented, machine learning has a big place in data analytics generally. That includes a lot of HPC-type informatics work — genomics, proteomics, etc. There’s even the equivalent in the humanities, called culturomics, which is essentially the analysis of datasets having to do with human cultures. Basically any application that does data correlations across large datasets can make use of this method.

The CUDA version of this machine learning algorithm not only out-performed the CPU implementation (straight C) by a factor of 10, it was 1,000 times faster than an unspecified high-level language implementation used in machine learning research.

Ren Wu, principal investigator of the CUDA Research Center at HP Labs, developed the k-means clustering code for GPUs used by PSC. In the announcement he had plenty of nice things to say about CUDA:

“I think that the CUDA programming model is a very nice framework, well balanced on abstraction and expressing power, easy to learn but with enough control for advanced algorithm designers, and supported by hardware with exceptional performance (compared to other alternatives). The key for any high-performance algorithm on modern multi/many-core architecture is to minimize the data movement and to optimize against memory hierarchy. Keeping this in mind, CUDA is as easy, if not easier, than any other alternatives.”

Whether Wu could have extracted similar performance from an OpenMP accelerator programming implementation or something similar is questionable. Clearly there are going to be situations where using CUDA (or OpenCL) is warranted. This will be especially true for library routines/algorithms that are used across a wide variety of applications, and whose speed is critical to the application’s performance. For data parallel algorithms that are local to specific applications, a more high level approach may be the way to go.

We’ve certainly been here before with assembly code and high-level languages. Both have established their place in software development. Similarly we’re going to see high-level and low-level GPU programming frameworks moving forward together and it’s going to be up to the programmer to know when to apply each.

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!

IBM Unveils Latest Achievements in AI Hardware

December 13, 2019

“The increased capabilities of contemporary AI models provide unprecedented recognition accuracy, but often at the expense of larger computational and energetic effort,” IBM Research wrote in a blog post. “Therefor Read more…

By Oliver Peckham

Focused on ‘Silicon TAM,’ Intel Puts Gary Patton, Former GlobalFoundries CTO, in Charge of Design Enablement

December 12, 2019

Change within Intel’s upper management – and to its company mission – has continued as a published report has disclosed that chip technology heavyweight Gary Patton, GlobalFoundries’ CTO and R&D SVP as well a Read more…

By Doug Black

Quantum Bits: Rigetti Debuts New Gates, D-Wave Cuts NEC Deal, AWS Jumps into the Quantum Pool

December 12, 2019

There’s been flurry of significant news in the quantum computing world. Yesterday, Rigetti introduced a new family of gates that reduces circuit depth required on some problems and D-Wave struck a deal with NEC to coll Read more…

By John Russell

How Formula 1 Used Cloud HPC to Build the Next Generation of Racing

December 12, 2019

Formula 1, Rob Smedley explained, is maybe the biggest racing spectacle in the world, with five hundred million fans tuning in for every race. Smedley, a chief engineer with Formula 1’s performance engineering and anal Read more…

By Oliver Peckham

RPI Powers Up ‘AiMOS’ AI Supercomputer

December 11, 2019

Designed to push the frontiers of computing chip and systems performance optimized for AI workloads, an 8 petaflops (Linpack) IBM Power9-based supercomputer has been unveiled in upstate New York that will be used by IBM Read more…

By Doug Black

AWS Solution Channel

Making High Performance Computing Affordable and Accessible for Small and Medium Businesses with HPC on AWS

High performance computing (HPC) brings a powerful set of tools to a broad range of industries, helping to drive innovation and boost revenue in finance, genomics, oil and gas extraction, and other fields. Read more…

IBM Accelerated Insights

GPU Scheduling and Resource Accounting: The Key to an Efficient AI Data Center

[Connect with LSF users and learn new skills in the IBM Spectrum LSF User Community!]

GPUs are the new CPUs

GPUs have become a staple technology in modern HPC and AI data centers. Read more…

At SC19: Developing a Digital Twin

December 11, 2019

In the not too distant future, we can expect to see our skies filled with unmanned aerial vehicles (UAVs) delivering packages, maybe even people, from location to location. In such a world, there will also be a digital twin for each UAV in the fleet: a virtual model that will follow the UAV through its existence, evolving with time. Read more…

By Aaron Dubrow

Focused on ‘Silicon TAM,’ Intel Puts Gary Patton, Former GlobalFoundries CTO, in Charge of Design Enablement

December 12, 2019

Change within Intel’s upper management – and to its company mission – has continued as a published report has disclosed that chip technology heavyweight G Read more…

By Doug Black

Quantum Bits: Rigetti Debuts New Gates, D-Wave Cuts NEC Deal, AWS Jumps into the Quantum Pool

December 12, 2019

There’s been flurry of significant news in the quantum computing world. Yesterday, Rigetti introduced a new family of gates that reduces circuit depth require Read more…

By John Russell

RPI Powers Up ‘AiMOS’ AI Supercomputer

December 11, 2019

Designed to push the frontiers of computing chip and systems performance optimized for AI workloads, an 8 petaflops (Linpack) IBM Power9-based supercomputer has Read more…

By Doug Black

At SC19: Developing a Digital Twin

December 11, 2019

In the not too distant future, we can expect to see our skies filled with unmanned aerial vehicles (UAVs) delivering packages, maybe even people, from location to location. In such a world, there will also be a digital twin for each UAV in the fleet: a virtual model that will follow the UAV through its existence, evolving with time. Read more…

By Aaron Dubrow

Intel’s Jim Clarke on its New Cryo-controller and why Intel isn’t Late to the Quantum Party

December 9, 2019

Intel today introduced the ‘first-of-its-kind’ cryo-controller chip for quantum computing and previewed a cryo-prober tool for characterizing quantum proces Read more…

By John Russell

On the Spack Track @SC19

December 5, 2019

At the annual supercomputing conference, SC19 in Denver, Colorado, there were Spack events each day of the conference. As a reflection of its grassroots heritage, nine sessions were planned by more than a dozen thought leaders from seven organizations, including three U.S. national Department of Energy (DOE) laboratories and Sylabs... Read more…

By Elizabeth Leake

Intel’s New Hyderabad Design Center Targets Exascale Era Technologies

December 3, 2019

Intel's Raja Koduri was in India this week to help launch a new 300,000 square foot design and engineering center in Hyderabad, which will focus on advanced com Read more…

By Tiffany Trader

AWS Debuts 7nm 2nd-Gen Graviton Arm Processor

December 3, 2019

The “x86 Big Bang,” in which market dominance of the venerable Intel CPU has exploded into fragments of processor options suited to varying workloads, has n Read more…

By Doug Black

Using AI to Solve One of the Most Prevailing Problems in CFD

October 17, 2019

How can artificial intelligence (AI) and high-performance computing (HPC) solve mesh generation, one of the most commonly referenced problems in computational engineering? A new study has set out to answer this question and create an industry-first AI-mesh application... Read more…

By James Sharpe

D-Wave’s Path to 5000 Qubits; Google’s Quantum Supremacy Claim

September 24, 2019

On the heels of IBM’s quantum news last week come two more quantum items. D-Wave Systems today announced the name of its forthcoming 5000-qubit system, Advantage (yes the name choice isn’t serendipity), at its user conference being held this week in Newport, RI. Read more…

By John Russell

DARPA Looks to Propel Parallelism

September 4, 2019

As Moore’s law runs out of steam, new programming approaches are being pursued with the goal of greater hardware performance with less coding. The Defense Advanced Projects Research Agency is launching a new programming effort aimed at leveraging the benefits of massive distributed parallelism with less sweat. Read more…

By George Leopold

Ayar Labs to Demo Photonics Chiplet in FPGA Package at Hot Chips

August 19, 2019

Silicon startup Ayar Labs continues to gain momentum with its DARPA-backed optical chiplet technology that puts advanced electronics and optics on the same chip Read more…

By Tiffany Trader

SC19: IBM Changes Its HPC-AI Game Plan

November 25, 2019

It’s probably fair to say IBM is known for big bets. Summit supercomputer – a big win. Red Hat acquisition – looking like a big win. OpenPOWER and Power processors – jury’s out? At SC19, long-time IBMer Dave Turek sketched out a different kind of bet for Big Blue – a small ball strategy, if you’ll forgive the baseball analogy... Read more…

By John Russell

Cray, Fujitsu Both Bringing Fujitsu A64FX-based Supercomputers to Market in 2020

November 12, 2019

The number of top-tier HPC systems makers has shrunk due to a steady march of M&A activity, but there is increased diversity and choice of processing compon Read more…

By Tiffany Trader

Crystal Ball Gazing: IBM’s Vision for the Future of Computing

October 14, 2019

Dario Gil, IBM’s relatively new director of research, painted a intriguing portrait of the future of computing along with a rough idea of how IBM thinks we’ Read more…

By John Russell

Kubernetes, Containers and HPC

September 19, 2019

Software containers and Kubernetes are important tools for building, deploying, running and managing modern enterprise applications at scale and delivering enterprise software faster and more reliably to the end user — while using resources more efficiently and reducing costs. Read more…

By Daniel Gruber, Burak Yenier and Wolfgang Gentzsch, UberCloud

Leading Solution Providers

SC 2019 Virtual Booth Video Tour

AMD
AMD
CEJN
CJEN
DDN
DDN
MELLANOX
MELLANOX
ONE STOP SYSTEMS
ONE STOP SYSTEMS
PANASAS
PANASAS
SIX NINES IT
SIX NINES IT
VERNE GLOBAL
VERNE GLOBAL
WEKAIO
WEKAIO

Intel Debuts New GPU – Ponte Vecchio – and Outlines Aspirations for oneAPI

November 17, 2019

Intel today revealed a few more details about its forthcoming Xe line of GPUs – the top SKU is named Ponte Vecchio and will be used in Aurora, the first plann Read more…

By John Russell

Dell Ramps Up HPC Testing of AMD Rome Processors

October 21, 2019

Dell Technologies is wading deeper into the AMD-based systems market with a growing evaluation program for the latest Epyc (Rome) microprocessors from AMD. In a Read more…

By John Russell

SC19: Welcome to Denver

November 17, 2019

A significant swath of the HPC community has come to Denver for SC19, which began today (Sunday) with a rich technical program. As is customary, the ribbon cutt Read more…

By Tiffany Trader

When Dense Matrix Representations Beat Sparse

September 9, 2019

In our world filled with unintended consequences, it turns out that saving memory space to help deal with GPU limitations, knowing it introduces performance pen Read more…

By James Reinders

Cerebras to Supply DOE with Wafer-Scale AI Supercomputing Technology

September 17, 2019

Cerebras Systems, which debuted its wafer-scale AI silicon at Hot Chips last month, has entered into a multi-year partnership with Argonne National Laboratory and Lawrence Livermore National Laboratory as part of a larger collaboration with the U.S. Department of Energy... Read more…

By Tiffany Trader

With the Help of HPC, Astronomers Prepare to Deflect a Real Asteroid

September 26, 2019

For years, NASA has been running simulations of asteroid impacts to understand the risks (and likelihoods) of asteroids colliding with Earth. Now, NASA and the European Space Agency (ESA) are preparing for the next, crucial step in planetary defense against asteroid impacts: physically deflecting a real asteroid. Read more…

By Oliver Peckham

Jensen Huang’s SC19 – Fast Cars, a Strong Arm, and Aiming for the Cloud(s)

November 20, 2019

We’ve come to expect Nvidia CEO Jensen Huang’s annual SC keynote to contain stunning graphics and lively bravado (with plenty of examples) in support of GPU Read more…

By John Russell

IBM Opens Quantum Computing Center; Announces 53-Qubit Machine

September 19, 2019

Gauging progress in quantum computing is a tricky thing. IBM yesterday announced the opening of the IBM Quantum Computing Center in New York, with five 20-qubit Read more…

By John Russell

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