In this workshop we will cover basic to advanced concepts in SYCL programming for heterogenous computing. We will work on the Intel DevCloud to do hands-on coding. At the end of this workshop you will be able to efficiently write SYCL code for heterogenous computing.
• Explain how oneAPI can solve the challenges of programming in a heterogeneous world
• Understand the SYCL language for High Performance Computing Applications and oneAPI programming model
• How to use SYCL Buffers and Accessors for data and memory management between host and device
• Understand the basics of Graphs and Dependences in SYCL.
• Onboard to Intel® DevCloud to test-drive oneAPI tools and libraries.
• We will learn pointer based memory management for heterogenous computing using Unified Shared Memory.
• Understand implicit and explicit way of moving memory using Unified Shared Memory and also handling data dependency between kernel executions.
• Use SYCL reduction to simplify reduction with parallel kernels
• Take advantages reduce function to do reduction at sub_group and work_group level
Agenda:
a) Introduction & Overview to oneAPI
b) Introduction to the Intel® DevCloud
c) Introduction to Jupyter notebooks used for training
d) Introduction to SYCL
e) SYCL Program Structure
f) Graphs and Dependences
• Hands On
a) Introduction to SYCL – Simple
b) Complex multiplication
c) Buffers
d) Unified Shared Memory
e) Reductions”