JuliaCon 2022 (Times are UTC)

Teaching GPU computing, experiences from our Master-level course
2022-07-27 , Blue

In the Fall Semester 2021 at ETH Zurich, we designed and taught a new course: Solving PDEs in parallel on GPUs with Julia. We present technical and teaching experiences we gained: we look at our tech-stack CUDA.jl, ParallelStencils.jl and ImplictGlobalGrid.jl for GPU-computing; and Franklin.jl, Literate.jl, IJulia.jl/Jupyter for web, slides, and exercises. We look into the crash-course in Julia, teaching software-engineering (git, CI) and project-based student evaluations.


In the Fall Semester 2021 at ETH Zurich, we designed and taught a new Master-level course: Solving PDEs in parallel on GPUs with Julia.

We had prior experience in teaching workshops and individual lectures based on Julia, this was our first end-to-end Julia-based lecture course. It filled a niche at ETH Zurich, Switzerland: namely numerical GPU computing for the domain scientists.

Whilst we had great prior experience with the GPU tech-stack used (we're developing part of it), we had to learn much on the presentational tech-stack to create a website, slides and assignments. The presentation will focus on both the GPU-stack (CUDA.jl, ParallelStencils.jl and ImplictGlobalGrid.jl) and the presentation-stack (Literate.jl, Franklin.jl, IJulia.jl/Jupyter).

Co-authors: Mauro Werder¹ ² , Samuel Omlin³

¹ Swiss Federal Institute for Forest, Snow and Landscape Research (WSL) | ² ETH Zurich | ³ Swiss National Supercomputing Centre (CSCS)

Geoscientist with strong interests in Julia, HPC, GPUs, and supercomputing. Applications to resolve multi-physics processes in ice dynamics and geodynamics across scales.

This speaker also appears in:

Glaciologist and Julia programmer