---
# System prepended metadata

title: GPU Programming Workshop - Planning Meeting
tags: ['2025', GPU_Programming]

---

![A-Sprint-Planning-Meeting-Agenda-Template](https://hackmd.io/_uploads/r1nhbi3EA.png)


<p style="text-align: center"><b><font size=5 color=blueyellow>GPU Programming Workshop (Planning Meeting)</font></b></p>


**Contents of this documents and quicklinks**：
[TOC]


## Links to previous events
- Agenda for workshop in 2023 (2-day event): https://hackmd.io/@yonglei/gpu-programming-2023-schedule
- Agenda for workshop in 2024 (2.5-day event): https://hackmd.io/@yonglei/gpu-programming-schedule-2024
- lesson material: https://enccs.github.io/gpu-programming/


## The 1st planning meeting (Oct. 2nd)


:::info
**Arrangement for this event**

- 2.5(3)-day event:
- 4*0.5-day event:
- ==3 separate 45min webinars spread across different days + 3*0.5-day event==
- 2\*1.5 webinars + 3*0.5-day event: 
- a 3-h webinar + 3*0.5-day event: 
- ~~one day + 3*0.5 day event~~
    - webinar covers theoretical part (the first 5 episodes at [HERE](https://enccs.github.io/gpu-programming/5-intro-to-gpu-prog-models/))
    - three half-day workshop
        - directive (40+40) + non-portable (45+30)
        - portable (60+30) + high-level (40+20)
        - multi-gpu-mpi (30+30) + porting (30+20) + computation (30+30)


**Date**

It would be (Tue-Thu or Wed-Fri, 09:00-12:00 (CET)/10:00-13:00(EET) for half-day event)

| Week |     Date    | Poll |
| :--: | :---------: | :--: |
|  47  | Nov. 18-21  | ++++++++ |
|  48  | Nov. 25-28  | +++++++++ |
|  49  | Dec. 2-5    | ++++ |
|  50  | Dec. 9-12   | ++ |

Note
- ==week 47 for 3 half-day webinars, week 48 for three-half day workshop==
- ST unavailable for Nov 27th (definitely) and 28th (possibly)
:::


### Instructors and helpers


**Send YW the logo of your institution to create an [event image](https://enccs.se/events/gpu-programming-why-when-how-2024/)**
- Yonglei, LiU/ENCCS
- Wei Li, LiU/ENCCS
- Stepas, VU/NCC LT
- Hicham, UiB/NRIS
- Ashwin, RISE/ENCCS
- Francesco, RISE/ENCCS
- Bjørn Lindi, NTNU/NRIS
- Tapish, [HZDR](https://www.hzdr.de/db/Pic?pOid=57530)/[CASUS](https://www.hzdr.de/db/Pic?pOid=58211), [alpaka](https://github.com/alpaka-group/alpaka/blob/develop/docs/logo/alpaka.png)
- Johan Hellsvik, PDC/KTH/NAISS
- Cristian-Vasile Achim, CSC
- Yann Pfau-Kempf, CSC
    - CSC logo: https://csc.fi/en/image-bank/ https://csc.fi/app/uploads/2024/01/CSC_2012_LOGO_RGB_72dpi.jpg


### HPC resources & target number of participants

- In the last two years we used LUMI for hand-on exercises.
- We expected to be 60 registrations.


### Agenda for webinars and workshop 2025


|  Time  |   Contents   |  Instructor(s)  |
| :----: | :----------: | :-------------: |
| 10 min | Welcome      | Yonglei/ Ashwin |
| 1st webinar | Why GPUs? GPU architecture and software ecosystem    |              |
| 2nd webinar | GPU programming concepts, what problems fit | Francesco, Stepas (help), (Yonglei) |
| 3rd webinar | Introduction to GPU programming models | Daniel, Ashwin |


|  Time  |   Contents   |  Instructor(s)  | Helper(s) | 
| :----: | :----------: | :-----------: | :-----------: |
| | Session 2 (Nov. 25) | | | 
| 40+40 min | Directive-based models (OpenACC, OpenMP) | Wei, Yann | CVA (help OpenMP) <br>Qiang (help) <br>Stepas (help OpenMP) |
| 45+30 min | Non-portable kernel-based models (CUDA, HIP) | ??? | Johan (help), CVA (help) |
| | Session 3 (Nov. 26) |
| 80+30 min | Portable kernel-based models (Kokkos, OpenCL, SYCL, C++ stdpar, alpaka, etc.) | Simeon/Tapish (alpaka), Bjørn (Kokkos),  | CVA (help SYCL) |
| 30+10 min | High-level language support | Simeon (julia),  Ashwin (Python) | Stepas (help Python) |
| | Session 4 (Nov. 27) | |
| 30+45 min | Multi-GPU programming with MPI | Hicham, ??? | ??? |
| 30+20 min | Preparing code for GPU porting | ??? | ??? |
| 30+30 min | Recommendations + Stencil examples | Stepas, ??? | Yonglei |
| 10 min | Wrap-up | Yonglei |



## The 2nd planning meeting (Oct. 2nd)


### Agenda for webinars (==Nov. 18-20==)

:::success
Update lesson material [**Introduction to GPU Programming**](https://enccs.github.io/intro-gpu-programming/)
- Event page at HPC portal: https://events.hpc-portal.eu/event/224
- Registration: https://events.hpc-portal.eu/event/224/registrations/
- Event page at ENCCS website: ==???==
:::

|  Time       |   Contents   | Instructor(s) |
| :---------: | :----------: | :-----------: |
|             | <span style="background-color: cyan">Nov. 18</span>  |               |
| 10:00-10:15 | Welcome      | Yonglei/Ashwin |
| 10:15-10:30 | Why GPUs?    | Yann, Hicham |
| 10:30-11:00 | GPU hardware and software ecosystem | Yann, Hicham |
| 11:00-11:20 | Q/A | |
| 11:20-12:00 | On-boarding session (login to LUMI) | Yonglei |
|             |              |               |
|             | <span style="background-color: cyan">Nov. 19</span>  |               |
| 10:00-10:10 | Welcome and Recap | Yonglei/Francesco |
| 10:10-10:40 | GPU programming concepts | Francesco, Stepas (help), (Yonglei) |
| 10:40-11:00 | What problems fit GPU programming? | Francesco, Stepas (help), (Yonglei) |
| 11:00-11:20 | Q/A |
| 11:20-12:00 | On-boarding session (login to LUMI) | Yonglei |
|             |              |               |
|             | <span style="background-color: cyan">Nov. 20</span>  |               |
| 10:00-10:10 | Welcome and Recap | Yonglei/Ashwin |
| 10:10-11:00 | Introduction to GPU programming models  | Daniel, Ashwin |
| 11:00-11:20 | Q/A | |
| 11:20-12:00 | On-boarding session (login to LUMI) | Yonglei |



### Agenda for workshop (==Nov. 25-27==)

:::success
Update lesson material [**GPU Programming: When, Why and How?**](https://enccs.github.io/gpu-programming/)
- Event page at HPC portal: https://events.hpc-portal.eu/event/97/
- Registration: https://events.hpc-portal.eu/event/97/registrations/
- Event page at ENCCS website: ==???==
:::

|  Time       |   Contents   | Instructor(s) | Helper(s) |
| :---------: | :----------: | :-----------: | :-------: |
|             | <span style="background-color: cyan">Nov. 25</span>  |               |           |
| 09:00-09:10 | Welcome      | Yonglei/Ashwin |          |
| 09:10-10:30 | Directive-based models (OpenACC, OpenMP) | Wei, Yann | CVA (help OpenMP) <br>Qiang (help) <br>Stepas (help OpenMP) |
| 10:30-10:40 | Break |
| 10:40-12:00 | Non-portable kernel-based models (CUDA, HIP) | ==YW seeks experts== | Johan (help), CVA (help) |
| 12:00-12:30 | Q/A session | | |
|             |              |               |           |
|             | <span style="background-color: cyan">Nov. 26</span>  |               |           |
| 09:00-09:10 | Welcome and Recap | Yonglei/??? |        |
| 09:10-11:00 | Portable kernel-based models <br>(Kokkos, OpenCL, SYCL, C++ stdpar, alpaka, *etc.*) | Simeon/Tapish (alpaka ~20 min) <br>Bjørn (Kokkos ~20 min) <br>~~???(C++ Stdpar)~~ <br>??? (OpenCL) <br>??? (SYCL) | CVA (SYCL) |
| 11:00-11:10 | Break |
| 11:10-12:00 | High-level language support | Simeon (julia),  Ashwin (Python) | Stepas (help Python) |
| 12:00-12:30 | Q/A session |
|             |              |               |           |
|             | <span style="background-color: cyan">Nov. 27</span>  |               |           |
| 09:00-09:10 | Welcome      | Yonglei/Ashwin |          |
| 09:10-10:30 | Multi-GPU programming with MPI | Hicham, ??? | ??? |
| 10:30-10:40 | Break |
| 10:40-11:30 | Example problem: Stencil computation | Stepas | ??? |
| 11:30-11:40 | Break |
| 11:40-12:20 | GPU porting <br>Recommendations | ==???== | Yonglei |
| 12:20-12:30 | Q/A & Summary | Yonglei/Ashwin | |


### HPC resources & target number of participants

- LUMI
- target 60 registrations for workshop
- no number limitations for webinars


---
---


## The 3rd planning meeting (Nov. 20)


### Feedback for webinars

- Nov. 18, ~60 people (excluding oraganizers) in the zoom room
- Nov. 19, ~50 people (excluding oraganizers)
- Nov. 20, ~40 people (excluding oraganizers)


### HPC resources & target number of participants

- Got ~80 registrations and have added accepted people to the LUMI training allocation
- YW have solved sevearl technical issues to help participants get accessing LUMI


### Agenda for workshop (==Nov. 25-27==)

|  Time       |   Contents   | Instructor(s) | Helper(s) |
| :---------: | :----------: | :-----------: | :-------: |
|             | <span style="background-color: cyan">Nov. 25</span>  |               |           |
| 09:00-09:10 | Welcome      | Yonglei/Ashwin |          |
| 09:10-10:30 | [Directive-based models (OpenACC, OpenMP)](https://enccs.github.io/gpu-programming/6-directive-based-models/) | Wei, Yann | CVA (help OpenMP) <br>Qiang (help) <br>~~Stepas (help OpenMP)~~ |
| 10:30-10:40 | Break |
| 10:40-12:00 | [Non-portable kernel-based models (CUDA, HIP)](https://enccs.github.io/gpu-programming/7-non-portable-kernel-models/#fundamentals-of-gpu-programming-with-cuda-and-hip) | Mariia | Johan (help), CVA (help) |
| 12:00-12:30 | Q/A session | | |
|             |              |               |           |
|             | <span style="background-color: cyan">Nov. 26</span>  |               |           |
| 09:00-09:10 | Welcome and Recap | Yonglei/Ashwin |        |
| 09:10-10:30 | [Portable kernel-based models <br>(Kokkos, alpaka, *etc.*)](https://enccs.github.io/gpu-programming/8-portable-kernel-models/) | Simeon/Tapish (alpaka 20+20) <br>Bjørn (Kokkos 20+20) | CVA (SYCL) |
| 10:30-10:40 | Break |
| 10:40-12:00 | [High-level language support](https://enccs.github.io/gpu-programming/9-language-support/) | Simeon (julia, 20+20),  Ashwin (Python, 20+20) | ~~Stepas (help Python)~~ Yonglei |
| 12:00-12:30 | Q/A session |
|             |              |               |           |
|             | <span style="background-color: cyan">Nov. 27</span>  |               |           |
| 09:00-09:10 | Welcome      | Yonglei/Ashwin |          |
| 09:10-10:20 | [Multi-GPU programming with MPI](https://enccs.github.io/gpu-programming/10-multiple_gpu/) | Hicham | Yonglei/ENCCS people |
| 10:20-10:30 | Break |
| 10:30-11:20 | [Example problem: Stencil computation](https://enccs.github.io/gpu-programming/13-examples/) | Stepas | Yonglei |
| 11:20-11:30 | Break |
| 11:30-12:20 | [GPU porting <br>Recommendations](https://enccs.github.io/gpu-programming/11-gpu-porting/) | Yonglei | CVA |
| 12:20-12:30 | Q/A & Summary | Yonglei/Ashwin | CVA |


### MISC




:::danger
:::
