Who needs GPUs? An overview of GPU applications running on New Zealand’s eScience Infrastructure (NeSI)
Alexander Pletzer1, Chris Scott2, Maxime Rio1, Wolfgang Hayek1, Damien Mather3, Gilles Bellon4, Georgina Rae2
1NeSI/NIWA, Wellington, New Zealand, 2NeSI/University of Auckland, 3University of Otago, 4University of Auckland
Graphical Processing Units (GPUs) promise to significantly accelerate compute intensive research. For a scientific computing organisation like NeSI, the fundamental questions are: (1) what approaches are currently available to offload computations to GPU hardware, (2) what speedup can be realistically expected compared to a CPU and (3) what code features could be used to determine whether a program could benefit from running on a GPU.
NeSI has recently acquired NVIDIA A100 GPUs, which complement a set of existing Pascal P100 GPUs. To answer the above questions, NeSI has conducted tests to evaluate the performance for a broad range of applications, from machine learning to a finite difference code, a quasi-equilibrium tropical circulation model and an application from marketing research. Each of these applications exercises a different computational kernel (matrix multiplication, loop parallelism) or relies on a different technology to offload computations to the GPU (Cuda programming, OpenACC, OpenMP, cuBLAS). Here we report our findings, which could help supercomputing centres determine the right balance between CPUs and GPUs on their systems, now and in the future.
Alexander Pletzer is HPC scientific programmer at NeSI where he helps researchers run better and faster on NeSI platforms. Alex has a background in plasma and theoretical physics. Alex has worked in academia, the industry and in research labs in the US and Europe prior to joining NeSI.