Portable GPU Programming
Course material for the CSC course "Portable GPU Programming". The course is part of the EuroCC training activities at CSC.
Presentation slides
The slides are available here.
Agenda
Day 1, Tuesday 21.10
| 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 |
Day 2, Wednesday 22.10
| 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 |
Day 3, Thursday 23.10
| 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 |
Day 4, Friday 24.10
| 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).
SYCL Book
Data Parallel C++ Programming Accelerated Systems Using C++ and SYCL