
- This event has passed.
PPCES 2025
Monday, 10. March - Friday, 14. March

in cooperation with
![]() |
![]() |
![]() |
---|
Parallel Programming in Computational Engineering and Science (PPCES)
March 10th – 14th, 2025
This one week event will continue the tradition of previous annual week-long events that take place in Aachen every spring since 2001. We will cover the basics of parallel programming using OpenMP and MPI in Fortran and C/C++ and a first step towards performance tuning. Furthermore, we will embrace current topics in machine & deep learning. Hands-on exercises for each topic will be included.
The contents of the courses are generally applicable but will be specialized towards the compute cluster CLAIX which is the current system installed at RWTH’s IT Center. It might be helpful to read through the information which is provided during the HPC introduction on March 4th 2025. This is especially true if you want to actively use CLAIX after this event.
Topics
The Message Passing Interface (MPI) is the de-facto standard for programming large HPC systems. We will introduce the basic concepts and give an overview of some advanced features.
OpenMP is a widely used approach for programming shared memory architectures, supported by most compilers nowadays. We will cover the basics of the programming paradigm as well as some advanced topics such as programming NUMA machines. The compute nodes of the RWTH HPC Cluster (aka CLAIX) contain an increasing number of cores and thus we consider shared memory programming a vital alternative for applications that cannot be easily parallelized with MPI.
Machine & Deep Learning: We provide a fundamental introduction into machine and deep learning approaches as well as data processing techniques that support dataset preparation or model selection for training and inference. It covers the basic concepts for supervised and unsupervised learning such as classification, regression, and clustering to get a feeling which technique is appropriate for a particular problem. Additionally, we conduct several hands-on exercises with common frameworks such as scikit-learn and PyTorch on our recent HPC Cluster CLAIX. In these exercises, we demonstrate how to define models, construct dataset and training pipelines or utilize monitoring and visualization of the training results, e.g., with Tensorboard. For the deep learning exercises, we start by training on a single GPU first. If that is not enough, we also show how to scale up distributed training onto multiple compute nodes or GPUs.
Organization
- There is no seminar fee.
- Presentations will be given in English. Slides will be available during or after the event.
- This is an in-person event and will be held on the RWTH IT Center premises (see below). Coffee, tea, and soda are sponsored by NEC throughout the event.
- You can/must register per topic, i.e., MPI (Mon + Tue), OpenMP (Wed + Thu), and ML/DL (Fri).
- For more details on the target audience, prerequistes and gained skills, see the “Skills” sections below (per topic).
Guest Speakers
We are happy to announce our guest speaker: Ruud van der Pas (Oracle Linux Engineering)
Agenda
Agenda is still subject to slight changes.
Day 1+2: MPI
Monday, March 10 | Day 1: MPI Part I | |
---|---|---|
09:00 – 09:10 | Welcome & Organization | Marc-André Hermanns (RWTH) |
09:10 – 10:10 | Introduction into Parallel Computing | Ruud van der Pas (Oracle Linux Engineering) |
10:10 – 10:30 | MPI Basics – Part 1 | Marc-André Hermanns (RWTH) |
10:30 – 11:00 | Coffee Break | |
11:00 – 12:10 | MPI Basics – Part 2 (incl. Lab)
|
Marc-André Hermanns (RWTH) |
12:10 – 12:40 | Blocking Point-to-Point Communication – Part 1 (incl. Lab) | Marc-André Hermanns (RWTH) |
12:40 – 14:00 | Lunch Break (on your own) | |
14:00 – 15:30 | Blocking Point-to-Point Communication – Part 2 (incl. Lab) | Marc-André Hermanns (RWTH) |
15:30 – 16:00 | Coffee Break | |
16:00 – 17:00 | Blocking Point-to-Point Communication – Part 3 (incl. Lab) | Marc-André Hermanns (RWTH) |
Tuesday, March 11 | Day 2: MPI Part II | |
---|---|---|
09:00 – 10:00 | Non-blocking Point-to-Point Communication (incl. Lab) | Marc-André Hermanns (RWTH) |
10:00 – 10:30 | Derived Datatypes – Part 1 (incl. Lab) | Marc-André Hermanns (RWTH) |
10:30 – 11:00 | Coffee Break | |
11:00 – 12:30 | Derived Datatypes – Part 2 (incl. Lab) | Marc-André Hermanns (RWTH) |
12:30 – 14:00 | Lunch Break (on your own) | |
14:00 – 15:30 | Blocking Collective Communication (incl. Lab) | Marc-André Hermanns (RWTH) |
15:30 – 16:00 | Coffee Break | |
16:00 – 17:00 | Communicator Basics (incl. Lab) | Marc-André Hermanns (RWTH) |
Day 3 + 4: OpenMP
Wednesday, March 12 | Day 3: OpenMP Part I | |
---|---|---|
09:00 – 09:10 | Welcome & Organization | Christian Terboven (RWTH) |
09:10 – 10:30 | OpenMP Basics – Part 1 | Christian Terboven (RWTH) |
10:30 – 11:00 | Coffee Break | |
11:00 – 12:30 | OpenMP Basics – Part 2
|
Christian Terboven (RWTH) |
12:30 – 14:00 | Lunch Break (on your own) | |
14:00 – 15:30 | OpenMP Basics – Part 3 (incl. Lab) | Christian Terboven (RWTH) |
15:30 – 16:00 | Coffee Break | |
16:00 – 17:00 | OpenMP Basics – Part 4 (incl. Lab) | Christian Terboven (RWTH) |
Thursday, March 13 | Day 4: OpenMP Part II | |
---|---|---|
09:00 – 10:30 | Speed up Your OpenMP Application Without Doing Much | Ruud van der Pas (Oracle Linux Engineering) |
10:30 – 11:00 | Coffee Break | |
11:00 – 12:30 | OpenMP Advanced Tasking (incl. Lab) | Christian Terboven (RWTH) |
12:30 – 14:00 | Lunch Break (on your own) | |
14:00 – 15:30 | OpenMP SIMD | Christian Terboven (RWTH) |
15:30 – 16:00 | Coffee Break | |
16:00 – 17:00 | OpenMP for Accelerators | Christian Terboven (RWTH) |
Day 5: Machine & Deep Learning
Friday, March 14 | Day 5: Machine Learning | |
---|---|---|
09:00 – 10:30 | Jannis Klinkenberg (RWTH) | |
10:30 – 11:00 | Coffee Break | |
11:00 – 12:30 | Introduction to AI and Machine Learning, and Preprocessing Techniques – Part 2 (incl. Lab) | Jannis Klinkenberg (RWTH) |
12:30 – 14:00 | Lunch Break (on your own) | |
14:00 – 15:30 | Introduction to (Distributed) Deep Learning | Jannis Klinkenberg (RWTH) |
15:30 – 16:00 | Coffee Break | |
16:00 – 17:00 | Hands-on (PyTorch) | Jannis Klinkenberg (RWTH) |
Skills – MPI
Course level
beginner
Target audience
- HPC developers
Prerequisites
- Able to understand C/C++ (or Fortran) source codes
- Comfortable with C/C++ or Fortran programming (for lab sessions)
- Comfortable using a Linux environment (for lab sessions)
Gained skills
- General understanding of the classic MPI “world model” of process initialization
- Overview of point-to-point and collective communication an their use cases
- Understand the use and definition of MPI derived datatypes
- Knowledge of basic MPI terminology
- Knowledge of blocking and non-blocking procedure calls and when to use them
- Using MPI together with OpenMP in basic hybrid scenarios
Skills – OpenMP
Course level
beginner
Target audience
- HPC users
- HPC developers
Prerequisites
- Able to understand C/C++ (or Fortran) source codes
- Comfortable with C/C++ or Fortran programming (for lab sessions)
- Comfortable using a Linux environment (for lab sessions)
Gained skills
- Broad knowledge of OpenMP, including the machine, memory and execution model
- General understanding when and how to use the different worksharing, synchronization and tasking constructs and directives
- Capability to apply OpenMP to existing codes and to use the scoping correctly
- Understanding of how OpenMP parallel programs interact with the system, in particular of NUMA architectures and SIMD microarchitectures
Skills – ML/DL
Course level
- beginner to intermediate
Target audience
- HPC/AI users
- HPC/AI developers
Prerequisites
- Basic knowledge of Python
- Comfortable using a JupyterHub or Linux environment (for lab sessions)
- Comfortable with Python programming and a little Bash scripting (for lab sessions)
Gained skills
- High-level overview of data proprocessing, AI, machine and deep learning techniques and how they relate to each other
- Understanding how to apply shallow ML techniques to solve classification and clustering tasks
- Understanding how to execute PyTorch deep learning and distributed deep learning on HPC infrastructures
Material Downloads
Materials will be published during and after the workshop.
MPI Exercises
OpenMP Exercises
ML/DL Exercises
Location
The workshop will take place in-person on the premises of the IT Center of RWTH Aachen University at:
Seminar rooms 003/004
Kopernikusstraße 6
52074 Aachen
Registration
Registration link (via our NHR4CES website): https://eveeno.com/ppces_2025
Please also withdraw your registration in the registration system using the link that you got in your confirmation e-mail (or let us know) if you cannot attend anymore. That will help us a lot in preparing the event (seats, catering and so on). Thanks! (Here are further instructions how to change or cancel your registration.)
Registration closing date: March 4th, 2025
Further Links
Need support or want to ask questions?
- HPC Consultation Hour (once per month)
- AI/ML/DL Consultation Hour (once per week)
Want to apply for compute time (proposals)?
- Overview of Compute Project Categories
- Visit WestAI website and send mail to contact@westai.de
Sponsoring
Catering is sponsored by