NHR PerfLab Seminar: SCALE—Ahead-of-time compilation of CUDA for HPC platforms (online)

Title: SCALE—Ahead-of-time compilation of CUDA for HPC platforms

Speaker: Chris Kitching, Founder and CTO, Spectral Compute

Slides

Abstract:

We propose a radically different way of thinking about GPU portability: If CUDA is cross-platform enough to model 20 years worth of Nvidia’s hardware, why can’t it represent other vendors? And CPU vendors don’t try to replace C, so why do GPU vendors keep trying to replace CUDA?

SCALE is a reimplementation of the CUDA software stack targeting AMD and NVIDIA GPUs. Instead of rewriting CUDA applications to achieve portability, we regard the vendor lock-in as an unsolved compiler problem. By providing a drop-in replacement for NVIDIA’s compiler and libraries, SCALE allows existing applications to be cross compiled rather than ported. The compiler work necessary to target different hardware vendors without loss of performance leads to the development of novel target-independent compiler optimizations, driving performance across all vendors.

This talk discusses some of the novel compiler optimizations developed for the project, how we handle semantics quirks in Nvidia’s compiler, how inline assembly is handled, and other technical topics about the implementation.

Image: Chris Kitching

Short Bio:

Chris spends his days leading the team of specialists behind SCALE: a cross-platform superset of CUDA. Having founded the project, he developed many core components of SCALE, including the inline PTX support and several novel compiler optimizations. His current work relates to developing further vendor-agnostic compiler optimizations for GPUs, unlocking additional performance for existing programs, and further expanding the platform.


For a list of past and upcoming NHR PerfLab seminar events, please see: https://hpc.fau.de/research/nhr-perflab-seminar-series/