Venue: 1010 H. H. Dow
Dr. John Tramm is an assistant scientist in the computational science division at Argonne National Laboratory. He received his PhD in computational nuclear engineering from MIT in 2018. John’s research efforts are focused on improving neutron transport methods that drive massively parallel simulations of nuclear reactors using some of the world’s largest supercomputers. John also has deep experience developing and optimizing simulation applications for GPU-based systems.
THE RISE OF PORTABLE GPU PROGRAMMING: EXPERIENCES DEVELOPING GPU-BASED SCIENTIFIC SIMULATION APPLICATIONS FOR INTEL, NVIDIA, AND AMD GPUs
Historically, portability has not been important for GPU programming as NVIDIA has dominated the high performance computing (HPC) GPU market. With only one major GPU vendor available to choose from, it has always made sense to develop scientific HPC apps using NVIDIA’s proprietary CUDA programming model. However, in 2022 both AMD and Intel are releasing HPC GPU products with the intention of competing directly with NVIDIA. In fact, the world’s first exascale supercomputer (Oak Ridge National Laboratory’s Frontier) is powered by AMD GPUs, with another even larger exascale supercomputer (Aurora) powered by Intel GPUs set to arrive at Argonne National Laboratory shortly. These new computers highlight a trend not just from CPU to GPU in HPC, but also a trend from proprietary CUDA into a number of different portable performance models for GPU. Thus, scientific application developers are now confronted with not only the difficultly of porting or developing apps for GPU architectures, but also with selecting from a wide variety of portable GPU programming models (for instance, OpenMP offloading, HIP, SYCL/DPC++, OpenCL, Kokkos, RAJA, and OCCA).
In this talk, I will briefly introduce the newest supercomputing systems and will give an overview of the many different portable performance models now available for GPUs. I will show a few snippets of an example kernel implemented in a variety of different models, and will even compare performance of a scientific mini-app, XSBench, across all major programming models and GPU architectures. Subjective “pros and cons” of each programming model will be discussed along with quantitative performance comparisons. Next, I will use a full scientific GPU application (the OpenMC Monte Carlo particle transport code) as a case study to discuss real-world issues affecting portable scientific GPU applications and how bleeding-edge GPU compiler technology stacks are faring. I will also briefly discuss a few of the algorithmic performance optimizations that we developed for OpenMC to give a feel for what types of changes are required to achieve high performance on GPU.
The MICDE Fall 2022 Seminar Series is open to all.
This seminar is hosted by the Michigan Institute for Computational Discovery & Engineering (MICDE). Dr. Tramm will be hosted by Prof. Brendan Kochunas, Assistant Professor of Nuclear Engineering and Radiological Sciences.
This is an in-person event, Zoom link will only be provided upon request. This seminar will not be recorded!
Graduate Certificate in Computational Discovery and Engineering, and MICDE fellows, please use this form to record your attendance.
Questions? Email MICDEemail@example.com