NERSCPowering Scientific Discovery for 50 Years

NESAP Hosts First NERSC-9 GPU Hackathon for Application Developers

February 20, 2019


The NERSC-9 Perlmutter system will use a combination of nodes with only CPUs, as well as nodes featuring both CPUs and GPUs.

As part of NERSC’s commitment to preparing users and their applications for its next-generation Perlmutter supercomputer, the NERSC Exascale Science Applications Program (NESAP) recently hosted the first NERSC-9 GPU hackathon.

Perlmutter, a pre-exascale Cray Shasta system slated to be delivered in 2020, will feature a number of new hardware and software innovations and is the first supercomputing system designed with both data analysis and simulations in mind. Unlike previous NERSC systems, Perlmutter will use a combination of nodes with only CPUs, as well as nodes featuring both CPUs and GPUs.

The focus of this hackathon was to “train the trainers” so that NERSC staff can grow their expertise in GPU programming and help users do the same, according to Brian Friesen, an application performance specialist at NERSC who led the event.

“The primary goal for code teams at the GPU hackathons is to gain knowledge and expertise about GPU programming and to apply that knowledge as they port their scientific applications to GPUs,” Friesen said.

Some applications can achieve breakthroughs even in a single hackathon, resulting in substantial speedups, after only a few days of work. However, in many other cases, experience has shown that three to four days is rarely enough time to improve code performance substantially, he added. “Our goal is for a scientific application developer to leave the hackathon better equipped with a strategy to port their full application to GPUs, a process that can take months or even years,” Friesen said.

The six-week “ramp-up” period preceding the hackathons, where code teams have weekly calls with Cray and NVIDIA engineers, is extremely useful, he added. “The result of this is twofold: first, in some cases, a significant application speedup can be achieved before the hackathon even starts. Second, even if a 'preemptive' speedup is not achieved, everyone present at the hackathon becomes familiar with the code they are working on, who they are working on it with, and so can get to work immediately when the hackathon begns.”

There will be roughly one GPU hackathon per quarter through 2021, with NERSC hosting around three code teams per hackathon. These events will consist primarily of NESAP code teams, with expertise provided by NERSC staff, as well as from Cray and NVIDIA engineers. The next GPU hackathon will take place at Berkeley Lab in the second quarter of 2019.

About NERSC and Berkeley Lab
The National Energy Research Scientific Computing Center (NERSC) is a U.S. Department of Energy Office of Science User Facility that serves as the primary high performance computing center for scientific research sponsored by the Office of Science. Located at Lawrence Berkeley National Laboratory, NERSC serves almost 10,000 scientists at national laboratories and universities researching a wide range of problems in climate, fusion energy, materials science, physics, chemistry, computational biology, and other disciplines. Berkeley Lab is a DOE national laboratory located in Berkeley, California. It conducts unclassified scientific research and is managed by the University of California for the U.S. Department of Energy. »Learn more about computing sciences at Berkeley Lab.