SC22 Proceedings

The International Conference for High Performance Computing, Networking, Storage, and Analysis

Birds of a Feather Archive

SYCL Portability: Tips and Tricks for Porting High Performance Libraries and Applications

Authors: Noah Clemons (Intel Corporation), Hartwig Anzt (University of Tennessee, Innovative Computing Laboratory), Yu-Hsiang Mike Tsai (Karlsruhe Institute of Technology), Istvan Reguly (Pázmány Péter Catholic University, Hungary)

Abstract: SYCL is a powerful way to enable multi-vendor support for high performance libraries, languages, and packages, while still allowing the originally desired programmer productivity and performance. While many BoFs/Presentations will focus on the end results of a port, this BoF is meant to share lessons learned in porting a diverse array of previously vendor-specific implementations to SYCL, how they enforced numerical reproducibility, and then added flexible vectorization for portable performance. This BoF will place strong emphasis on sharing cross architecture debugging techniques.

Long Description: This BoF will explain developer lessons learned in porting 1 library (Gingko), 1 language (Julia), and 1 package (SeisSol) to SYCL, with a special emphasis on cross architecture debug techniques.


We will provide an interactive experience of a platform-portable sparse linear algebra library – Gingko. Previously, we already ported essential parts of our library like SpMV or Krylov solvers to SYCL. We present challenges and our solutions when porting functionality and in staying up to date due to the changing SYCL Standard, issues with per-kernel code splitting, and supporting varying hardware. We generate kernels suitable for different devices and give our approach of pre-compiled kernels. To wrap up, we show some experimental results of preconditioners or Algebraic Multigrad.


At Julia Computing, our mission is to advance scientific discovery. In order to achieve this goal across many disciplines, we need to leverage modern techniques across varying architectures. This presentation will cover two intersections of exciting new methods and hardware to accelerate scientific insight. We dive into the SYCL port of JuliaSim where cutting-edge machine learning techniques are being applied to physical simulations.


We will present our recent results of porting SeisSol, a software package for simulating seismic waves and earthquake dynamics, to SYCL. During the talk, we are going to demonstrate a set of comparisons of various SeisSol specific benchmarks compiled and executed with SYCL, hipSYCL, and CUDA. At the end, we are going to present performance of the whole application obtained with 2 Nvidia RTX 3090 Turbo GPUs.


Back to Birds of a Feather Archive Listing