Heterogeneous computing with SYCL & oneAPI on CINECA's Leonardo
Phase 1: Webinar: Heterogeneous computing with SYCL & oneAPI on CINECA's Leonardo • October 10th, 2024
In this webinar attendees will learn the fundamentals of the SYCL programming model, exploring its key concepts and capabilities, and how to leverage oneAPI tools to bridge SYCL code with proprietary programming models such as CUDA and HIP, and deploy on a variety of hardware platforms. The webinar also features a detailed example of a successful CUDA to SYCL migration, showcasing the practical steps and benefits of this approach. With ample time for questions and discussion, attendees will leave with a solid understanding of SYCL and the confidence to apply it to their own HPC projects. Finally, the webinar also introduces developers to the SYCL oneAPI Hackaton at CINECA, a three-stage event (this webinar, an online learning course, and a final on-site Hackaton) where attendees will learn how to effectively write efficient heterogeneous SYCL code, and how to use oneAPI tools to deploy it on CINECA's Leonardo, a Tier-0 EuroHPC supercomputer ranked #7 on the Top500 list of the world's most powerful supercomputers.
Contents
Module | Topics | Code on CompilerExplorer (small input) | Code on GitHub |
---|---|---|---|
SYCL Basics | queue, buffer, accessors, parallelism | saxpy | saxpy.cpp |
device selection and exception | saxpy_dev | saxpy_device.cpp | |
2d range | matmul | matmul.cpp | |
task scheduling, in order queue | two_matmul, two_matmul_inorder | two_matmul.cpp, two_matmul_inorder.cpp | |
USM implicit and explicit | saxpy_usm_implicit, saxpy_usm_explicit | saxpy_usm_implicit.cpp, saxpy_usm_explicit.cpp | |
SYCL Advanced | kernel reduction | dot_product | dot_product_reduction.cpp |
group algorithms | matmul_bcast | matmul_broadcast.cpp | |
local memory | matmul_tiling | matmul_tiling.cpp | |
atomics | counter | counter_atomics.cpp |
Teaching material
Phase 2: Online training • CodeReckons


Access to the CodeReckons platform for one training and quiz
Phase 3: SYCL and oneAPI Hackaton
The Hackaton event will take place from December 2nd to 4th at the CINECA in Bologna.References
- SYCL 2020 Specifications
- SYCL Book: Data Parallel C++ Programming Accelerated Systems Using C++ and SYCL
- SYCL Academy by Codeplay Ltd
- Intel training program for oneAPI
- Intel Tiber Developer Cloud for oneAPI
- SYCL-Bench