SYCL is an open standard defined by the Khronos Group and allows programmers to write code for high-end GPUs across the biggest platforms like Intel, Nvidia and AMD, using both custom device kernels and optimised vendor libraries. This course will teach you the basics of the SYCL programming model, using the DPC++ compiler, and show how to run the same code on different GPU hardware. It will also touch on using high-performance libraries like oneMKL to get the best performance on these devices in domains like BLAS, FFT and others. oneMKL is based on the oneAPI specification and governed by the UXL Foundation.
Prerequisites:
Knowledge of C++ and associated build systems would be helpful for attendees as SYCL is built on C++17 and does utilise modern C++ features.
Requirements:
Participants must bring a laptop with a Mac, Linux, or Windows operating system (not a tablet, Chromebook, etc.) that they have administrative privileges on.
They are also required to abide by the ARCHER2 Code of Conduct.
Timetable:
Details to follow