Course material for the CSC course "Portable GPU Programming". The course is part of the EuroCC training activities at CSC.
The slides are available here.
Time | Topic |
---|---|
09:00-09:15 | Welcome |
09:15-09:45 | Parallel Computing & Supercomputers |
09:50-10:00 | Intro & GPU execution model |
10:00-10:20 | GPU memory hierarchy |
10:40-12:00 | Mahti and LUMI Computing Platforms & Profiling |
12:00-13:00 | Lunch break |
13:00-14:10 | Refresher of C++ |
14:30-15:20 | MPI basics |
15:20-16:30 | Break and Exercises |
16:30-16:45 | Day 1 wrap-up |
Time | Topic |
---|---|
09:15-09:30 | Introduction to SYCL |
09:30-10:00 | Simple SYCL |
10:25-11:00 | SYCL Exercises |
11:00-11:20 | Advanced SYCL |
11:20-12:00 | SYCL Exercises |
12:00-13:00 | Lunch break |
13:00-13:30 | Other SYCL Features |
13:30-14:00 | SYCL Exercises |
14:00-15:00 | Memory Optimizations |
15:00-15:45 | SYCL and MPI |
15:45-16:30 | Interoperability |
16:30-16:45 | Day 2 wrap-up |
Time | Topic |
---|---|
09:15-12:00 | Kokkos I (with exercises) |
12:00-13:00 | Lunch break |
13:00-15:00 | Kokkos II (with exercises) |
15:00-16:30 | Kokkos III (with exercises) |
16:30-16:45 | Day 3 wrap-up |
Time | Topic |
---|---|
09:15-12:00 | OpenMP offload (with exercises) |
12:00-13:00 | Lunch break |
13:00-16:00 | OpenMP offload (with exercises) |
16:00-16:45 | Portable GPU programming frameworks wrap-up |
The lectures in this repository are published under CC-BY-SA license. Some of the lectures and exercises are based on Intel copyrighted work and they have their own license (MIT).
Data Parallel C++ Programming Accelerated Systems Using C++ and SYCL