Previous talks at the SCCS Colloquium

Ludwig Kratzl: Performance portability and evaluation of heterogeneous components of SeiSol targeted to upcoming Intel HPC GPUs

SCCS Colloquium |


SeiSol is an Open-Source repository for the numerical simulation of earthquakes and seismic waves. Initially designed with an MPI+OpenMP model targeted to computations on CPUs, SeiSol recently took a step towards performance portability by substituting OpenMP with CUDA or HIP, respectively. Therefore, SeiSol is executable on AMD or Nvidia GPUs but not on other vendor models like Intel's Xe series. However, in 2021, the Leibniz Rechenzentrum (LRZ) announced to convey its SuperMUC-NG into a new phase: To fit the needs of modern AI computations, they expand their supercomputer by Intel's upcoming HPC GPU Iris Xe "Ponte Vecchio". In this thesis, we analyze the existing heterogeneous components of SeiSol and apply all necessary changes to port them to Intel GPUs. We select the oneAPI and hipSYCL platform in combination with the cross-platform standard Sycl as a programming model and explain and perform the changes that are crucial to add Intel GPU support. Subsequently, we evaluate the performance of our portability by a Jacobi Relaxation Benchmark on a single and two Iris Xe "DG1" and perform a roofline model analysis using dense general matrix-matrix multiplications, showing that the LP series can already reach peak performance. Additionally, we perform the same performance analyses using two Nvidia RTX 3090 GPUs, demonstrating that a CUDA backend together with Sycl could replace all native GPU implementations in the future. Finally, we compile and run  SeiSol's proxy variant on both types of GPUs, proofing that our changes can immediately be applied once the new GPUs are available. Last, we ensure the correctness of our portability by executing SeiSol's LOH1 and TPV5 benchmark on the Nvidia system.

Bachelor's thesis talk. Ludwig is advised by Ravil Dorozhinskii.