SYCL is a C++ abstraction layer for programming heterogeneous hardware with a single-source approach. SYCL is high-level, cross-platform, and extends standard ISO C++17.

In this workshop you will learn to:

- Use the hipSYCL compiler to generate executables for multiple hardware targets.

- Write hardware-agnostic code to express parallelism using the queue, command group, and kernel abstractions.

- Use buffer and accessors to handle memory across devices.

- Evaluate drawbacks and advantages of unified shared memory.

The EuroCC National Competence Center Sweden (ENCCS) provides high-performance computing training and support for industry, academia and public administration for free.