VVZ API is not affiliated with ETH Zurich. Data might be outdated or incorrect. Please view the official ETHZ Vorlesungsverzeichnis for binding information.

701-1270-00L

High Performance Computing for Weather and Climate (Block course)

VVZ CR n/a

Last Updated: 2026-07-21 00:35:12

Abstract

Weather and climate simulations require highly optimized software that runs efficiently on modern supercomputers. This course introduces fundamental programming methods and performance engineering tools used to develop and optimize such models. The course combines lectures, practical exercises, and a team-based project.

Objective

By the end of the course, students will be able to: - Explain the computational demands of numerical weather and climate models and the role of high-performance computing (subject-specific competence) - Analyze and optimize the performance of code using profiling tools and performance models such as the Roofline model (method-specific competence) - Implement parallel programs using OpenMP, MPI, and GPU offloading techniques (method- and subject-specific competences) - Apply high-level domain-specific languages (e.g., GT4Py) to prototype performant scientific code (subject-specific competence) - Collaborate in a team to complete a mini research project applying HPC methods to a weather or climate-related problem (social and personal competences)

Content

The course is structured in two parts: Part I: Block week (5 days): A mix of lectures and guided exercises covering: -Introduction to HPC for weather and climate applications -Shared-memory programming (OpenMP) - Distributed-memory programming (MPI, halo exchange) - GPU programming and offloading - Performance analysis and Roofline model - High-level programming with domain-specific languages (e.g., GT4Py) Part II: Group project (2–4 students): Development, optimization, and evaluation of a small weather/climate code component on an HPC system.

Resources

Literature

- Introduction to High Performance Computing for Scientists and Engineers, G. Hager and G. Wellein, CRC Press, 2011 - Computer Organization and Design, D.H. Patterson and J.L. Hennessy - Parallel Computing, A. Grama, A. Gupta, G. Karypis, V. Kumar ( https://www-users.cs.umn.edu/~karypis/parbook/ ) - Parallel Programming in MPI and OpenMP, V. Eijkhout ( http://pages.tacc.utexas.edu/~eijkhout/pcse/html/index.html )

General Information