{"id":7331,"date":"2025-01-21T10:14:55","date_gmt":"2025-01-21T09:14:55","guid":{"rendered":"https:\/\/blog.rwth-aachen.de\/itc-events\/?post_type=tribe_events&#038;p=7331"},"modified":"2026-01-16T14:09:46","modified_gmt":"2026-01-16T13:09:46","slug":"ppces-2025","status":"publish","type":"tribe_events","link":"https:\/\/blog.rwth-aachen.de\/itc-events\/en\/event\/ppces-2025\/","title":{"rendered":"PPCES 2025"},"content":{"rendered":"<p>in cooperation with<\/p>\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"2\">\n<tbody>\n<tr>\n<th width=\"200\"><a href=\"https:\/\/hpc.dh.nrw\"><img loading=\"lazy\" decoding=\"async\" class=\"alignleft wp-image-6853\" src=\"https:\/\/blog.rwth-aachen.de\/itc-events\/files\/2023\/12\/hpc-nrw_Kooperationsvorhaben_Logo_RGB-300x105.png\" alt=\"HPC.NRW Kompetenznetzwerk\" width=\"200\" height=\"70\" \/><\/a><\/th>\n<th width=\"300\"><a href=\"https:\/\/www.edih-rheinland.eu\/\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-6846 aligncenter\" src=\"https:\/\/blog.rwth-aachen.de\/itc-events\/files\/2023\/12\/EDIH-Logo-kompakt_rgb-300x159.png\" alt=\"European Digital Innovation Hub (EDIH) Rheinland\" width=\"147\" height=\"78\" srcset=\"https:\/\/blog.rwth-aachen.de\/itc-events\/files\/2023\/12\/EDIH-Logo-kompakt_rgb-300x159.png 300w, https:\/\/blog.rwth-aachen.de\/itc-events\/files\/2023\/12\/EDIH-Logo-kompakt_rgb-1024x542.png 1024w, https:\/\/blog.rwth-aachen.de\/itc-events\/files\/2023\/12\/EDIH-Logo-kompakt_rgb-768x406.png 768w, https:\/\/blog.rwth-aachen.de\/itc-events\/files\/2023\/12\/EDIH-Logo-kompakt_rgb.png 1206w\" sizes=\"auto, (max-width: 147px) 100vw, 147px\" \/><\/a><\/th>\n<th width=\"300\"><a href=\"https:\/\/westai.de\/\"><img loading=\"lazy\" decoding=\"async\" class=\" wp-image-6847 aligncenter\" src=\"https:\/\/blog.rwth-aachen.de\/itc-events\/files\/2023\/12\/WestAI_service_cb-300x67.png\" alt=\"KI-Servicezentrum im Westen Deutschlands\" width=\"228\" height=\"51\" srcset=\"https:\/\/blog.rwth-aachen.de\/itc-events\/files\/2023\/12\/WestAI_service_cb-300x67.png 300w, https:\/\/blog.rwth-aachen.de\/itc-events\/files\/2023\/12\/WestAI_service_cb-1024x230.png 1024w, https:\/\/blog.rwth-aachen.de\/itc-events\/files\/2023\/12\/WestAI_service_cb-768x173.png 768w, https:\/\/blog.rwth-aachen.de\/itc-events\/files\/2023\/12\/WestAI_service_cb.png 1531w\" sizes=\"auto, (max-width: 228px) 100vw, 228px\" \/><\/a><\/th>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>&nbsp;<\/p>\n<h1><\/h1>\n<h1 id=\"PPCES2019-ParallelProgramminginComputationalEngineeringandScience2019\">Parallel Programming in Computational Engineering and Science (PPCES)<\/h1>\n<h1>March 10th &#8211; 14th, 2025<\/h1>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-2783 size-medium alignright\" src=\"https:\/\/blog.rwth-aachen.de\/itc-events\/files\/2021\/02\/show_picture-300x120.jpg\" alt=\"Logo PPCES Event\" width=\"300\" height=\"120\" srcset=\"https:\/\/blog.rwth-aachen.de\/itc-events\/files\/2021\/02\/show_picture-300x120.jpg 300w, https:\/\/blog.rwth-aachen.de\/itc-events\/files\/2021\/02\/show_picture.jpg 709w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/p>\n<h2><\/h2>\n<p>This one week event will continue the tradition of <a href=\"https:\/\/blog.rwth-aachen.de\/itc-events\/ppces\/\">previous annual week-long events<\/a> 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 &amp; deep learning. Hands-on exercises for each topic will be included.<\/p>\n<p>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\u2019s IT Center. It might be helpful to read through the information which is provided during the <a href=\"https:\/\/blog.rwth-aachen.de\/itc-events\/en\/event\/introduction-to-high-performance-computing-2025\/\">HPC introduction on March 4th 2025.<\/a> <span class=\"tlid-translation translation\" lang=\"en\"><span title=\"\">This is especially true if you want to actively use CLAIX after this event.<\/span><\/span><\/p>\n<h2>Topics<\/h2>\n<p><strong>The Message Passing Interface (MPI)<\/strong> is the de-facto standard for programming large HPC systems. We will introduce the basic concepts and give an overview of some advanced features.<\/p>\n<p><strong>OpenMP<\/strong> 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.<\/p>\n<p><strong>Machine &amp; Deep Learning<\/strong>: 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.<\/p>\n<h2>Organization<\/h2>\n<ul>\n<li>There is no seminar fee.<\/li>\n<li>Presentations will be given in English. Slides will be available during or after the event.<\/li>\n<li>This is an <strong>in-person<\/strong> event and will be <strong>held on the RWTH IT Center premises<\/strong> (see below). Coffee, tea, and soda are sponsored by NEC throughout the event.<\/li>\n<li>You can\/must register per topic, i.e., MPI (Mon + Tue), OpenMP (Wed + Thu), and ML\/DL (Fri).<\/li>\n<li>For more details on the target audience, prerequistes and gained skills, see the &#8220;Skills&#8221; sections below (per topic).<\/li>\n<\/ul>\n<h2>Guest Speakers<\/h2>\n<p>We are happy to announce our guest speaker: <strong>Ruud van der Pas<\/strong> (Oracle Linux Engineering)<\/p>\n<h2>Agenda<\/h2>\n<h3>Day 1+2: MPI<\/h3>\n<table border=\"1\" cellspacing=\"0\" cellpadding=\"2\">\n<tbody>\n<tr>\n<th width=\"215\">Monday, March 10<\/th>\n<th width=\"300\">Day 1: MPI Part I<\/th>\n<th width=\"250\"><\/th>\n<\/tr>\n<tr>\n<td width=\"215\">09:00 \u2013 09:10<\/td>\n<td width=\"300\"><a href=\"https:\/\/blog.rwth-aachen.de\/itc-events\/files\/2025\/03\/ppces_organization.pdf\">Welcome &amp; Organization<\/a><\/td>\n<td width=\"250\">Marc-Andr\u00e9 Hermanns (RWTH)<\/td>\n<\/tr>\n<tr>\n<td width=\"215\">09:10 \u2013 10:10<\/td>\n<td width=\"300\"><a href=\"https:\/\/blog.rwth-aachen.de\/itc-events\/files\/2025\/01\/ppces.2025.intro_.parallel.computing.pdf\">Introduction into Parallel Computing<\/a><\/p>\n<ul>\n<li>Video: see section &#8220;Recordings&#8221; below<\/li>\n<\/ul>\n<\/td>\n<td width=\"250\">Ruud van der Pas (Oracle Linux Engineering)<\/td>\n<\/tr>\n<tr>\n<td width=\"215\">10:10 \u2013 10:30<\/td>\n<td width=\"300\"><a href=\"https:\/\/blog.rwth-aachen.de\/itc-events\/files\/2025\/01\/hpc.nrw-01-MPI-Overview.pdf\">MPI Basics &#8211; Part 1<\/a><\/p>\n<ul>\n<li>Video: similar content as part of &#8220;MPI in Small Bites&#8221; (see section &#8220;Recordings&#8221; below)<\/li>\n<\/ul>\n<\/td>\n<td width=\"250\">Marc-Andr\u00e9 Hermanns (RWTH)<\/td>\n<\/tr>\n<tr>\n<td>10:30 &#8211; 11:00<\/td>\n<td colspan=\"2\">Coffee Break<\/td>\n<\/tr>\n<tr>\n<td width=\"215\">11:00 \u2013 12:10<\/td>\n<td width=\"300\"><a href=\"https:\/\/blog.rwth-aachen.de\/itc-events\/files\/2025\/01\/hpc.nrw-02-MPI_Concepts.pdf\">MPI Basics &#8211; Part 2 (incl. Lab)<\/a><\/p>\n<ul>\n<li>Exercises + Source Codes: see &#8220;Material Downloads&#8221; (below)<\/li>\n<\/ul>\n<\/td>\n<td width=\"250\">Marc-Andr\u00e9 Hermanns (RWTH)<\/td>\n<\/tr>\n<tr>\n<td width=\"215\">12:10 \u2013 12:40<\/td>\n<td width=\"300\"><a href=\"https:\/\/blog.rwth-aachen.de\/itc-events\/files\/2025\/01\/hpc.nrw-03-Blocking_Point-to-Point_Communication.pdf\">Blocking Point-to-Point Communication<\/a> &#8211; Part 1 (incl. Lab)<\/p>\n<ul>\n<li>Video: similar content as part of &#8220;MPI in Small Bites&#8221; (see section &#8220;Recordings&#8221; below)<\/li>\n<\/ul>\n<\/td>\n<td width=\"250\">Marc-Andr\u00e9 Hermanns (RWTH)<\/td>\n<\/tr>\n<tr>\n<td>12:40 &#8211; 14:00<\/td>\n<td colspan=\"2\">Lunch Break (on your own)<\/td>\n<\/tr>\n<tr>\n<td width=\"215\">14:00 \u2013 15:30<\/td>\n<td width=\"300\">Blocking Point-to-Point Communication &#8211; Part 2 (incl. Lab)<\/td>\n<td width=\"250\">Marc-Andr\u00e9 Hermanns (RWTH)<\/td>\n<\/tr>\n<tr>\n<td>15:30 &#8211; 16:00<\/td>\n<td colspan=\"2\">Coffee Break<\/td>\n<\/tr>\n<tr>\n<td width=\"215\">16:00 \u2013 17:00<\/td>\n<td width=\"300\">Blocking Point-to-Point Communication &#8211; Part 3 (incl. Lab)<\/td>\n<td width=\"250\">Marc-Andr\u00e9 Hermanns (RWTH)<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>&nbsp;<\/p>\n<table border=\"1\" cellspacing=\"0\" cellpadding=\"2\">\n<tbody>\n<tr>\n<th width=\"215\">Tuesday, March 11<\/th>\n<th width=\"300\">Day 2: MPI Part II<\/th>\n<th width=\"250\"><\/th>\n<\/tr>\n<tr>\n<td width=\"215\">09:00 \u2013 10:00<\/td>\n<td width=\"300\"><a href=\"https:\/\/blog.rwth-aachen.de\/itc-events\/files\/2025\/01\/hpc.nrw-04-Non-blocking-Point-to-Point_Communication.pdf\">Non-blocking Point-to-Point Communication (incl. Lab)<\/a><\/p>\n<ul>\n<li>Video: see section &#8220;Recordings&#8221; below<\/li>\n<\/ul>\n<\/td>\n<td width=\"250\">Marc-Andr\u00e9 Hermanns (RWTH)<\/td>\n<\/tr>\n<tr>\n<td width=\"215\">10:00 \u2013 10:30<\/td>\n<td width=\"300\"><a href=\"https:\/\/blog.rwth-aachen.de\/itc-events\/files\/2025\/01\/hpc.nrw-05-Derived_Datatypes.pdf\">Derived Datatypes &#8211; Part 1 (incl. Lab)<\/a><\/p>\n<ul>\n<li>Video: see section &#8220;Recordings&#8221; below<\/li>\n<\/ul>\n<\/td>\n<td width=\"250\">Marc-Andr\u00e9 Hermanns (RWTH)<\/td>\n<\/tr>\n<tr>\n<td>10:30 &#8211; 11:00<\/td>\n<td colspan=\"2\">Coffee Break<\/td>\n<\/tr>\n<tr>\n<td>11:00 &#8211; 12:30<\/td>\n<td width=\"300\">Derived Datatypes &#8211; Part 2 (incl. Lab)<\/td>\n<td width=\"250\">Marc-Andr\u00e9 Hermanns (RWTH)<\/td>\n<\/tr>\n<tr>\n<td>12:30 &#8211; 14:00<\/td>\n<td colspan=\"2\">Lunch Break (on your own)<\/td>\n<\/tr>\n<tr>\n<td width=\"215\">14:00 \u2013 15:30<\/td>\n<td width=\"300\"><a href=\"https:\/\/blog.rwth-aachen.de\/itc-events\/files\/2025\/01\/hpc.nrw-06-Blocking_Collective_Communication.pdf\">Blocking Collective Communication (incl. Lab)<\/a><\/p>\n<ul>\n<li>Video: see section &#8220;Recordings&#8221; below<\/li>\n<\/ul>\n<\/td>\n<td width=\"250\">Marc-Andr\u00e9 Hermanns (RWTH)<\/td>\n<\/tr>\n<tr>\n<td>15:30 &#8211; 16:00<\/td>\n<td colspan=\"2\">Coffee Break<\/td>\n<\/tr>\n<tr>\n<td width=\"215\">16:00 \u2013 17:00<\/td>\n<td width=\"300\"><a href=\"https:\/\/blog.rwth-aachen.de\/itc-events\/files\/2025\/01\/hpc.nrw-07-Communicator_Handling.pdf\">Communicator Basics (incl. Lab)<\/a><\/p>\n<ul>\n<li>Video: see section &#8220;Recordings&#8221; below<\/li>\n<\/ul>\n<\/td>\n<td width=\"250\">Marc-Andr\u00e9 Hermanns (RWTH)<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h3><\/h3>\n<h3>Day 3 + 4: OpenMP<\/h3>\n<table border=\"1\" cellspacing=\"0\" cellpadding=\"2\">\n<tbody>\n<tr>\n<th width=\"215\">Wednesday, March 12<\/th>\n<th width=\"300\">Day 3: OpenMP Part I<\/th>\n<th width=\"250\"><\/th>\n<\/tr>\n<tr>\n<td width=\"215\">09:00 \u2013 09:10<\/td>\n<td width=\"300\"><a href=\"https:\/\/blog.rwth-aachen.de\/itc-events\/files\/2025\/03\/ppces_organization.pdf\">Welcome &amp; Organization<\/a><\/td>\n<td width=\"250\">Christian Terboven (RWTH)<\/td>\n<\/tr>\n<tr>\n<td width=\"215\">09:10 \u2013 10:30<\/td>\n<td width=\"300\">OpenMP Basics &#8211; Part 1<\/p>\n<ul>\n<li><a href=\"https:\/\/blog.rwth-aachen.de\/itc-events\/files\/2025\/01\/00-openmp-CT-welcome.pdf\">Agenda<\/a><\/li>\n<li><a href=\"https:\/\/blog.rwth-aachen.de\/itc-events\/files\/2025\/01\/01-openmp-CT-overview.pdf\">Overview<\/a><\/li>\n<li><a href=\"https:\/\/blog.rwth-aachen.de\/itc-events\/files\/2025\/01\/02-openmp-CT-parallel_region.pdf\">Parallel Region<\/a><\/li>\n<li>Video: similar content as part of &#8220;OpenMP in Small Bites&#8221; (see section &#8220;Recordings&#8221; below)<\/li>\n<\/ul>\n<\/td>\n<td width=\"250\">Christian Terboven (RWTH)<\/td>\n<\/tr>\n<tr>\n<td>10:30 &#8211; 11:00<\/td>\n<td colspan=\"2\">Coffee Break<\/td>\n<\/tr>\n<tr>\n<td width=\"215\">11:00 \u2013 12:30<\/td>\n<td width=\"300\">OpenMP Basics &#8211; Part 2<\/p>\n<ul>\n<li><a href=\"https:\/\/blog.rwth-aachen.de\/itc-events\/files\/2025\/01\/03-openmp-CT-worksharing.pdf\">Worksharing<\/a><\/li>\n<li><a href=\"https:\/\/blog.rwth-aachen.de\/itc-events\/files\/2025\/01\/04-openmp-CT-scoping.pdf\">Scoping<\/a><\/li>\n<li><a href=\"https:\/\/blog.rwth-aachen.de\/itc-events\/files\/2025\/01\/05-openmp-CT-compilers_exercises.pdf\">Compilers + Exercises<\/a><\/li>\n<li>Exercises + Source Codes: see &#8220;Material Downloads&#8221; (below)<\/li>\n<li>Video: similar content as part of &#8220;OpenMP in Small Bites&#8221; (see section &#8220;Recordings&#8221; below)<\/li>\n<\/ul>\n<\/td>\n<td width=\"250\">Christian Terboven (RWTH)<\/td>\n<\/tr>\n<tr>\n<td>12:30 &#8211; 14:00<\/td>\n<td colspan=\"2\">Lunch Break (on your own)<\/td>\n<\/tr>\n<tr>\n<td width=\"215\">14:00 \u2013 15:30<\/td>\n<td width=\"300\">OpenMP Basics &#8211; Part 3 (incl. Lab)<\/p>\n<ul>\n<li><a href=\"https:\/\/blog.rwth-aachen.de\/itc-events\/files\/2025\/01\/06-openmp-CT-welcome.pdf\">Agenda<\/a><\/li>\n<li><a href=\"https:\/\/blog.rwth-aachen.de\/itc-events\/files\/2025\/01\/07-openmp-CT-tasking_motivation.pdf\">Tasking Motivation<\/a><\/li>\n<li><a href=\"https:\/\/blog.rwth-aachen.de\/itc-events\/files\/2025\/01\/08-openmp-CT-tasking_model.pdf\">Tasking Model<\/a><\/li>\n<li><a href=\"https:\/\/blog.rwth-aachen.de\/itc-events\/files\/2025\/01\/09-openmp-CT-taskloop.pdf\">Taskloop<\/a><\/li>\n<li><a href=\"https:\/\/blog.rwth-aachen.de\/itc-events\/files\/2025\/01\/10-openmp-CT-tasking_cutoff.pdf\">Cutoff<\/a><\/li>\n<li><a href=\"https:\/\/blog.rwth-aachen.de\/itc-events\/files\/2025\/01\/11-openmp-CT-tasking_dependencies.pdf\">Dependencies<\/a><\/li>\n<li>Video: similar content as part of &#8220;OpenMP in Small Bites&#8221; (see section &#8220;Recordings&#8221; below)<\/li>\n<\/ul>\n<\/td>\n<td width=\"250\">Christian Terboven (RWTH)<\/td>\n<\/tr>\n<tr>\n<td>15:30 &#8211; 16:00<\/td>\n<td colspan=\"2\">Coffee Break<\/td>\n<\/tr>\n<tr>\n<td width=\"215\">16:00 \u2013 17:00<\/td>\n<td width=\"300\">OpenMP Basics &#8211; Part 4 (incl. Lab)<\/p>\n<ul>\n<li><a href=\"https:\/\/blog.rwth-aachen.de\/itc-events\/files\/2025\/01\/12-openmp-CT-welcome.pdf\">Agenda<\/a><\/li>\n<li><a href=\"https:\/\/blog.rwth-aachen.de\/itc-events\/files\/2025\/01\/13-openmp-CT-NUMA.pdf\">NUMA<\/a><\/li>\n<li><a href=\"https:\/\/blog.rwth-aachen.de\/itc-events\/files\/2025\/01\/14-openmp-CT-tasking_affinity.pdf\">Affinity<\/a><\/li>\n<li><a href=\"https:\/\/blog.rwth-aachen.de\/itc-events\/files\/2025\/01\/15-openmp-CT-hybrid.pdf\">Hybrid<\/a><\/li>\n<li>Video: similar content as part of &#8220;OpenMP in Small Bites&#8221; (see section &#8220;Recordings&#8221; below)<\/li>\n<\/ul>\n<\/td>\n<td width=\"250\">Christian Terboven (RWTH)<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>&nbsp;<\/p>\n<div class=\"table-wrap\">\n<table border=\"1\" cellspacing=\"0\" cellpadding=\"2\">\n<tbody>\n<tr>\n<th width=\"215\">Thursday, March 13<\/th>\n<th width=\"300\">Day 4: OpenMP Part II<\/th>\n<th width=\"250\"><\/th>\n<\/tr>\n<tr>\n<td width=\"215\">09:00 \u2013 10:30<\/td>\n<td width=\"300\"><a href=\"https:\/\/blog.rwth-aachen.de\/itc-events\/files\/2025\/01\/ppces.2025.openmp.performance.pdf\">Speed up Your OpenMP Application Without Doing Much<\/a><\/p>\n<ul>\n<li>Video: see section &#8220;Recordings&#8221; below<\/li>\n<\/ul>\n<\/td>\n<td width=\"250\">Ruud van der Pas (Oracle Linux Engineering)<\/td>\n<\/tr>\n<tr>\n<td>10:30 &#8211; 11:00<\/td>\n<td colspan=\"2\">Coffee Break<\/td>\n<\/tr>\n<tr>\n<td width=\"215\">11:00 \u2013 12:30<\/td>\n<td width=\"300\">OpenMP Advanced Tasking (incl. Lab)<\/td>\n<td width=\"250\">Christian Terboven (RWTH)<\/td>\n<\/tr>\n<tr>\n<td>12:30 &#8211; 14:00<\/td>\n<td colspan=\"2\">Lunch Break (on your own)<\/td>\n<\/tr>\n<tr>\n<td width=\"215\">14:00 \u2013 15:30<\/td>\n<td width=\"300\"><a href=\"https:\/\/blog.rwth-aachen.de\/itc-events\/files\/2025\/01\/16-openmp-CT-SIMD.pdf\">OpenMP SIMD<\/a><\/td>\n<td width=\"250\">Christian Terboven (RWTH)<\/td>\n<\/tr>\n<tr>\n<td>15:30 &#8211; 16:00<\/td>\n<td colspan=\"2\">Coffee Break<\/td>\n<\/tr>\n<tr>\n<td width=\"215\">16:00 \u2013 17:00<\/td>\n<td width=\"300\"><a href=\"https:\/\/blog.rwth-aachen.de\/itc-events\/files\/2025\/01\/18-openmp-CT-offloading.pdf\">OpenMP for Accelerators<\/a><\/td>\n<td width=\"250\">Christian Terboven (RWTH)<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<h3><\/h3>\n<h3>Day 5: Machine &amp; Deep Learning<\/h3>\n<table border=\"1\" cellspacing=\"0\" cellpadding=\"2\">\n<tbody>\n<tr>\n<th width=\"215\">Friday, March 14<\/th>\n<th width=\"300\">Day 5: Machine Learning<\/th>\n<th width=\"250\"><\/th>\n<\/tr>\n<tr>\n<td width=\"215\">09:00 \u2013 10:30<\/td>\n<td width=\"300\">\n<ul>\n<li><a href=\"https:\/\/blog.rwth-aachen.de\/itc-events\/files\/2025\/01\/01_ML-DL_Agenda.pdf\">Agenda &amp; Focus<\/a><\/li>\n<li><a href=\"https:\/\/blog.rwth-aachen.de\/itc-events\/files\/2025\/01\/02_ML-DL_Introduction_AI_ML.pdf\">Introduction to AI and Machine Learning, and Preprocessing Techniques &#8211; Part 1<\/a>\n<ul>\n<li>Video: see section &#8220;Recordings&#8221; below<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/td>\n<td width=\"250\">Jannis Klinkenberg (RWTH)<\/td>\n<\/tr>\n<tr>\n<td>10:30 &#8211; 11:00<\/td>\n<td colspan=\"2\">Coffee Break<\/td>\n<\/tr>\n<tr>\n<td width=\"215\">11:00 \u2013 12:30<\/td>\n<td width=\"300\">Introduction to AI and Machine Learning, and Preprocessing Techniques &#8211; Part 2 (incl. Lab)<\/p>\n<ul>\n<li><a href=\"https:\/\/blog.rwth-aachen.de\/itc-events\/files\/2025\/01\/03_ML-DL_Execution_Options.pdf\">Execution Options for ML\/DL Software<\/a>\n<ul>\n<li>Video: see section &#8220;Recordings&#8221; below<\/li>\n<\/ul>\n<\/li>\n<li><a href=\"https:\/\/blog.rwth-aachen.de\/itc-events\/files\/2025\/01\/ML-DL_Hands-on.pdf\">Hands-on Exercises (scikit)<\/a>\n<ul>\n<li>Exercises + Source Codes: see &#8220;Material Downloads&#8221; (below)<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/td>\n<td width=\"250\">Jannis Klinkenberg (RWTH)<\/td>\n<\/tr>\n<tr>\n<td>12:30 &#8211; 14:00<\/td>\n<td colspan=\"2\">Lunch Break (on your own)<\/td>\n<\/tr>\n<tr>\n<td width=\"215\">14:00 &#8211; 15:30<\/td>\n<td width=\"300\">Introduction to (Distributed) Deep Learning<\/p>\n<ul>\n<li><a href=\"https:\/\/blog.rwth-aachen.de\/itc-events\/files\/2025\/01\/04_ML-DL_Introduction_DL.pdf\">Introduction to Deep Learning<\/a><\/li>\n<li><a href=\"https:\/\/blog.rwth-aachen.de\/itc-events\/files\/2025\/01\/05_ML-DL_PyTorch.pdf\">Case Study &#8211; PyTorch<\/a><\/li>\n<li><a href=\"https:\/\/blog.rwth-aachen.de\/itc-events\/files\/2025\/01\/06_ML-DL_Distributed_DL.pdf\">Distributed Deep Learning + Case Study &#8211; PyTorch<\/a><\/li>\n<li><a href=\"https:\/\/blog.rwth-aachen.de\/itc-events\/files\/2025\/01\/99_ML-DL_Further_Links_and_Literature.pdf\">Further Links and Literature<\/a><\/li>\n<\/ul>\n<\/td>\n<td width=\"250\">Jannis Klinkenberg (RWTH)<\/td>\n<\/tr>\n<tr>\n<td>15:30 &#8211; 16:00<\/td>\n<td colspan=\"2\">Coffee Break<\/td>\n<\/tr>\n<tr>\n<td width=\"215\">16:00 &#8211; 17:00<\/td>\n<td width=\"300\"><a href=\"https:\/\/blog.rwth-aachen.de\/itc-events\/files\/2025\/01\/ML-DL_Hands-on.pdf\">Hands-on (PyTorch)<\/a><\/td>\n<td width=\"250\">Jannis Klinkenberg (RWTH)<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>&nbsp;<\/p>\n<h2>Skills &#8211; MPI<\/h2>\n<h4 dir=\"auto\" data-sourcepos=\"27:1-27:15\"><a id=\"user-content-course-level-1\" class=\"anchor\" href=\"#course-level-1\" aria-hidden=\"true\"><\/a>Course level<\/h4>\n<p dir=\"auto\" data-sourcepos=\"29:1-29:8\">beginner<\/p>\n<h4 dir=\"auto\" data-sourcepos=\"31:1-31:18\"><a id=\"user-content-target-audience-1\" class=\"anchor\" href=\"#target-audience-1\" aria-hidden=\"true\"><\/a>Target audience<\/h4>\n<ul dir=\"auto\" data-sourcepos=\"33:1-34:0\">\n<li data-sourcepos=\"33:1-34:0\">HPC developers<\/li>\n<\/ul>\n<h4 dir=\"auto\" data-sourcepos=\"35:1-35:16\"><a id=\"user-content-prerequisites-1\" class=\"anchor\" href=\"#prerequisites-1\" aria-hidden=\"true\"><\/a>Prerequisites<\/h4>\n<ul dir=\"auto\" data-sourcepos=\"37:1-40:0\">\n<li data-sourcepos=\"37:1-37:52\">Able to understand C\/C++ (or Fortran) source codes<\/li>\n<li data-sourcepos=\"38:1-38:66\">Comfortable with C\/C++ or Fortran programming (for lab sessions)<\/li>\n<li data-sourcepos=\"39:1-40:0\">Comfortable using a Linux environment (for lab sessions)<\/li>\n<\/ul>\n<h4 dir=\"auto\" data-sourcepos=\"41:1-41:16\"><a id=\"user-content-gained-skills-1\" class=\"anchor\" href=\"#gained-skills-1\" aria-hidden=\"true\"><\/a>Gained skills<\/h4>\n<ul dir=\"auto\" data-sourcepos=\"43:1-49:0\">\n<li data-sourcepos=\"43:1-43:82\">General understanding of the classic MPI &#8220;world model&#8221; of process initialization<\/li>\n<li data-sourcepos=\"44:1-44:76\">Overview of point-to-point and collective communication an their use cases<\/li>\n<li data-sourcepos=\"45:1-45:60\">Understand the use and definition of MPI derived datatypes<\/li>\n<li data-sourcepos=\"46:1-46:36\">Knowledge of basic MPI terminology<\/li>\n<li data-sourcepos=\"47:1-47:77\">Knowledge of blocking and non-blocking procedure calls and when to use them<\/li>\n<li data-sourcepos=\"48:1-49:0\">Using MPI together with OpenMP in basic hybrid scenarios<\/li>\n<\/ul>\n<h2>Skills &#8211; OpenMP<\/h2>\n<h4 dir=\"auto\" data-sourcepos=\"7:1-7:15\">Course level<\/h4>\n<p dir=\"auto\" data-sourcepos=\"9:1-9:8\">beginner<\/p>\n<h4 dir=\"auto\" data-sourcepos=\"11:1-11:18\"><a id=\"user-content-target-audience\" class=\"anchor\" href=\"#target-audience\" aria-hidden=\"true\"><\/a>Target audience<\/h4>\n<ul dir=\"auto\" data-sourcepos=\"13:1-15:0\">\n<li data-sourcepos=\"13:1-13:11\">HPC users<\/li>\n<li data-sourcepos=\"14:1-15:0\">HPC developers<\/li>\n<\/ul>\n<h4 dir=\"auto\" data-sourcepos=\"16:1-16:16\"><a id=\"user-content-prerequisites\" class=\"anchor\" href=\"#prerequisites\" aria-hidden=\"true\"><\/a>Prerequisites<\/h4>\n<ul dir=\"auto\" data-sourcepos=\"18:1-21:0\">\n<li data-sourcepos=\"18:1-18:52\">Able to understand C\/C++ (or Fortran) source codes<\/li>\n<li data-sourcepos=\"19:1-19:66\">Comfortable with C\/C++ or Fortran programming (for lab sessions)<\/li>\n<li data-sourcepos=\"20:1-21:0\">Comfortable using a Linux environment (for lab sessions)<\/li>\n<\/ul>\n<h4 dir=\"auto\" data-sourcepos=\"41:1-41:16\">Gained skills<\/h4>\n<ul>\n<li data-sourcepos=\"23:1-23:78\">Broad knowledge of OpenMP, including the machine, memory and execution model<\/li>\n<li data-sourcepos=\"24:1-24:124\">General understanding when and how to use the different worksharing, synchronization and tasking constructs and directives<\/li>\n<li data-sourcepos=\"25:1-25:79\">Capability to apply OpenMP to existing codes and to use the scoping correctly<\/li>\n<li data-sourcepos=\"26:1-28:0\">Understanding of how OpenMP parallel programs interact with the system, in particular of NUMA architectures and SIMD microarchitectures<\/li>\n<\/ul>\n<h2>Skills &#8211; ML\/DL<\/h2>\n<h4 dir=\"auto\" data-sourcepos=\"52:1-52:15\">Course level<\/h4>\n<ul dir=\"auto\" data-sourcepos=\"54:1-55:0\">\n<li data-sourcepos=\"54:1-55:0\">beginner to intermediate<\/li>\n<\/ul>\n<h4 dir=\"auto\" data-sourcepos=\"56:1-56:18\"><a id=\"user-content-target-audience-2\" class=\"anchor\" href=\"#target-audience-2\" aria-hidden=\"true\"><\/a>Target audience<\/h4>\n<ul dir=\"auto\" data-sourcepos=\"58:1-60:0\">\n<li data-sourcepos=\"58:1-58:14\">HPC\/AI users<\/li>\n<li data-sourcepos=\"59:1-60:0\">HPC\/AI developers<\/li>\n<\/ul>\n<h4 dir=\"auto\" data-sourcepos=\"61:1-61:16\"><a id=\"user-content-prerequisites-2\" class=\"anchor\" href=\"#prerequisites-2\" aria-hidden=\"true\"><\/a>Prerequisites<\/h4>\n<ul dir=\"auto\" data-sourcepos=\"63:1-66:0\">\n<li data-sourcepos=\"63:1-63:27\">Basic knowledge of Python<\/li>\n<li data-sourcepos=\"64:1-64:72\">Comfortable using a JupyterHub or Linux environment (for lab sessions)<\/li>\n<li data-sourcepos=\"65:1-66:0\">Comfortable with Python programming and a little Bash scripting (for lab sessions)<\/li>\n<\/ul>\n<h4 dir=\"auto\" data-sourcepos=\"67:1-67:16\"><a id=\"user-content-gained-skills-2\" class=\"anchor\" href=\"#gained-skills-2\" aria-hidden=\"true\"><\/a>Gained skills<\/h4>\n<ul dir=\"auto\" data-sourcepos=\"69:1-71:105\">\n<li data-sourcepos=\"69:1-69:119\">High-level overview of data proprocessing, AI, machine and deep learning techniques and how they relate to each other<\/li>\n<li data-sourcepos=\"70:1-70:95\">Understanding how to apply shallow ML techniques to solve classification and clustering tasks<\/li>\n<li data-sourcepos=\"71:1-71:105\">Understanding how to execute PyTorch deep learning and distributed deep learning on HPC infrastructures<\/li>\n<\/ul>\n<h2>Material Downloads<\/h2>\n<p>Materials will be published during and after the workshop.<\/p>\n<p><strong>MPI Exercises<\/strong><\/p>\n<ul>\n<li><a href=\"http:\/\/hpc.rwth-aachen.de\/ppces\/ppces2025-MPI-labs-all.tar.gz\">ppces2025-MPI-labs-all.tar.gz<\/a><\/li>\n<li><a href=\"http:\/\/hpc.rwth-aachen.de\/ppces\/ppces2025-MPI-labs-C.tar.gz\">ppces2025-MPI-labs-C.tar.gz<\/a><\/li>\n<li><a href=\"http:\/\/hpc.rwth-aachen.de\/ppces\/ppces2025-MPI-labs-Fortran.tar.gz\">ppces2025-MPI-labs-Fortran.tar.gz<\/a><\/li>\n<\/ul>\n<p><strong>OpenMP Exercises<\/strong><\/p>\n<ul>\n<li><a href=\"http:\/\/hpc.rwth-aachen.de\/ppces\/ppces2025-OpenMP-Exercises.pdf\">ppces2025-OpenMP-Exercises.pdf<\/a><\/li>\n<li><a href=\"http:\/\/hpc.rwth-aachen.de\/ppces\/ppces2025-OpenMP-labs-C.tar.gz\">ppces2025-OpenMP-labs-C.tar.gz<\/a><\/li>\n<li><a href=\"http:\/\/hpc.rwth-aachen.de\/ppces\/ppces2025-OpenMP-labs-Fortran.tar.gz\">ppces2025-OpenMP-labs-Fortran.tar.gz<\/a><\/li>\n<\/ul>\n<p><strong>ML\/DL Exercises<\/strong><\/p>\n<ul>\n<li><a href=\"https:\/\/blog.rwth-aachen.de\/itc-events\/files\/2025\/01\/ML-DL_Hands-on.pdf\">ppces2025-ML-DL_Hands-on.pdf<\/a><\/li>\n<li><a href=\"http:\/\/hpc.rwth-aachen.de\/ppces\/ppces2025-ML-DL-labs.tar.gz\">ppces2025-ML-DL-labs.tar.gz<\/a><\/li>\n<\/ul>\n<h2>Recordings<\/h2>\n<p>We are in the process of publishing numerous recordings from the presentations on the YouTube channel of the IT Center (until end of May 2025).<br \/>\nThe corresponding &#8220;PPCES 2025&#8221; playlist can be found here: <a href=\"https:\/\/www.youtube.com\/playlist?list=PL1jPG9xHv0a-fnT1-CSNRpM4YM_5lo2BS\">https:\/\/www.youtube.com\/playlist?list=PL1jPG9xHv0a-fnT1-CSNRpM4YM_5lo2BS<\/a><\/p>\n<ul>\n<li><a href=\"https:\/\/www.youtube.com\/watch?v=4ju-AiXX0zI&amp;list=PL1jPG9xHv0a-fnT1-CSNRpM4YM_5lo2BS&amp;index=3&amp;pp=iAQB\">Introduction into Parallel Computing<\/a><\/li>\n<li><a href=\"https:\/\/www.youtube.com\/watch?v=9ojKLzp2BkU&amp;list=PL1jPG9xHv0a-fnT1-CSNRpM4YM_5lo2BS&amp;index=2\">OpenMP: Speed up Your OpenMP Application Without Doing Much<\/a><\/li>\n<li><a href=\"https:\/\/www.youtube.com\/watch?v=hujBPrHsw_Q&amp;list=PL1jPG9xHv0a-fnT1-CSNRpM4YM_5lo2BS&amp;index=1\">MPI: Non-blocking Point-to-Point Communication<\/a><\/li>\n<li><a href=\"https:\/\/www.youtube.com\/watch?v=r_is0MloRQo&amp;list=PL1jPG9xHv0a-fnT1-CSNRpM4YM_5lo2BS&amp;index=1&amp;pp=iAQB\">MPI: Derived Datatypes<\/a><\/li>\n<li><a href=\"https:\/\/www.youtube.com\/watch?v=Y41_KB8L5Sg&amp;list=PL1jPG9xHv0a-fnT1-CSNRpM4YM_5lo2BS&amp;index=2\">MPI: Blocking Collective Communication<\/a><\/li>\n<li><a href=\"https:\/\/www.youtube.com\/watch?v=RhHJdVp00r4&amp;list=PL1jPG9xHv0a-fnT1-CSNRpM4YM_5lo2BS&amp;index=1\">MPI: Communicator Basics<\/a><\/li>\n<li><a href=\"https:\/\/www.youtube.com\/watch?v=ynZEFxEQP0w&amp;list=PL1jPG9xHv0a-fnT1-CSNRpM4YM_5lo2BS&amp;index=2&amp;pp=iAQB\">ML: Introduction to AI and Machine Learning, and Preprocessing Techniques<\/a><\/li>\n<li><a href=\"https:\/\/www.youtube.com\/watch?v=lLjFWUK8pdw&amp;list=PL1jPG9xHv0a-fnT1-CSNRpM4YM_5lo2BS&amp;index=1&amp;pp=iAQB\">ML: Execution Options for ML\/DL Software<\/a><\/li>\n<\/ul>\n<p>Other content from the PPCES workshop has been previously recorded in a smiliar way and made available on the <a href=\"https:\/\/hpc-wiki.info\">HPC Wiki<\/a>.<\/p>\n<ul>\n<li><a href=\"https:\/\/hpc-wiki.info\/hpc\/OpenMP_in_Small_Bites\">OpenMP in Small Bites<\/a><\/li>\n<li><a href=\"https:\/\/hpc-wiki.info\/hpc\/MPI_in_Small_Bites\">MPI in Small Bites<\/a><\/li>\n<\/ul>\n<h2>Location<\/h2>\n<p>The workshop will take place <strong>in-person on the premises of the IT Center of RWTH Aachen University<\/strong> at:<\/p>\n<p>Seminar rooms 003\/004<br \/>\nKopernikusstra\u00dfe 6<br \/>\n52074 Aachen<\/p>\n<h2>Registration<\/h2>\n<p>Registration link (via our NHR4CES website): <a href=\"https:\/\/eveeno.com\/ppces_2025\">https:\/\/eveeno.com\/ppces_2025<\/a><\/p>\n<p>Please also <strong>withdraw your registration<\/strong> 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! <em>(<a href=\"http:\/\/hpc.rwth-aachen.de\/training\/registration\/Eveeno_ChangeRegistration.pdf\">Here<\/a> are further instructions how to change or cancel your registration.)<\/em><\/p>\n<p>Registration closing date: March 4th, 2025<del><br \/>\n<\/del><\/p>\n<h2>Further Links<\/h2>\n<p>Need support or want to ask questions?<\/p>\n<ul>\n<li><a href=\"https:\/\/blog.rwth-aachen.de\/itc-events\/en\/hpc-consultation-hour\/\">HPC Consultation Hour<\/a> (once per month)<\/li>\n<li><a href=\"https:\/\/hpc.dh.nrw\/de\/events\/ki-sprechstunde\">AI\/ML\/DL Consultation Hour<\/a> (once per week)<\/li>\n<\/ul>\n<p>Want to apply for compute time (proposals)?<\/p>\n<ul>\n<li><a href=\"https:\/\/help.itc.rwth-aachen.de\/service\/rhr4fjjutttf\/article\/45825b06afb647e194be4a5b9f5b8768\/\">Overview of Compute Project Categories<\/a><\/li>\n<li>Visit <a href=\"https:\/\/westai.de\/\">WestAI website<\/a> and send mail to contact@westai.de<\/li>\n<\/ul>\n<h2>Sponsoring<\/h2>\n<p>Catering is sponsored by<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-medium wp-image-6289\" src=\"https:\/\/blog.rwth-aachen.de\/itc-events\/files\/2023\/01\/NEC_logo-300x86.jpg\" alt=\"\" width=\"300\" height=\"86\" srcset=\"https:\/\/blog.rwth-aachen.de\/itc-events\/files\/2023\/01\/NEC_logo-300x86.jpg 300w, https:\/\/blog.rwth-aachen.de\/itc-events\/files\/2023\/01\/NEC_logo-1024x294.jpg 1024w, https:\/\/blog.rwth-aachen.de\/itc-events\/files\/2023\/01\/NEC_logo-768x220.jpg 768w, https:\/\/blog.rwth-aachen.de\/itc-events\/files\/2023\/01\/NEC_logo-1536x440.jpg 1536w, https:\/\/blog.rwth-aachen.de\/itc-events\/files\/2023\/01\/NEC_logo.jpg 1573w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/p>","protected":false},"excerpt":{"rendered":"<p>in cooperation with &nbsp; Parallel Programming in Computational Engineering and Science (PPCES) March 10th &#8211; 14th, 2025 This one week event will continue the tradition of previous annual week-long events [&hellip;]<\/p>\n","protected":false},"author":3726,"featured_media":6093,"template":"","meta":{"_price":"","_stock":"","_tribe_ticket_header":"","_tribe_default_ticket_provider":"","_ticket_start_date":"","_ticket_end_date":"","_tribe_ticket_show_description":"","_tribe_ticket_show_not_going":false,"_tribe_ticket_use_global_stock":"","_tribe_ticket_global_stock_level":"","_global_stock_mode":"","_global_stock_cap":"","_tribe_rsvp_for_event":"","_tribe_ticket_going_count":"","_tribe_ticket_not_going_count":"","_tribe_tickets_list":"[]","_tribe_ticket_has_attendee_info_fields":false,"_tribe_events_status":"","_tribe_events_status_reason":"","footnotes":"","_tec_slr_enabled":"","_tec_slr_layout":""},"tags":[],"tribe_events_cat":[22,55,39],"class_list":["post-7331","tribe_events","type-tribe_events","status-publish","has-post-thumbnail","hentry","tribe_events_cat-hpcevents","tribe_events_cat-ppces","tribe_events_cat-wiederkehrend","cat_hpcevents","cat_ppces","cat_wiederkehrend"],"ticketed":false,"_links":{"self":[{"href":"https:\/\/blog.rwth-aachen.de\/itc-events\/en\/wp-json\/wp\/v2\/tribe_events\/7331","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.rwth-aachen.de\/itc-events\/en\/wp-json\/wp\/v2\/tribe_events"}],"about":[{"href":"https:\/\/blog.rwth-aachen.de\/itc-events\/en\/wp-json\/wp\/v2\/types\/tribe_events"}],"author":[{"embeddable":true,"href":"https:\/\/blog.rwth-aachen.de\/itc-events\/en\/wp-json\/wp\/v2\/users\/3726"}],"version-history":[{"count":55,"href":"https:\/\/blog.rwth-aachen.de\/itc-events\/en\/wp-json\/wp\/v2\/tribe_events\/7331\/revisions"}],"predecessor-version":[{"id":7556,"href":"https:\/\/blog.rwth-aachen.de\/itc-events\/en\/wp-json\/wp\/v2\/tribe_events\/7331\/revisions\/7556"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blog.rwth-aachen.de\/itc-events\/en\/wp-json\/wp\/v2\/media\/6093"}],"wp:attachment":[{"href":"https:\/\/blog.rwth-aachen.de\/itc-events\/en\/wp-json\/wp\/v2\/media?parent=7331"}],"wp:term":[{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.rwth-aachen.de\/itc-events\/en\/wp-json\/wp\/v2\/tags?post=7331"},{"taxonomy":"tribe_events_cat","embeddable":true,"href":"https:\/\/blog.rwth-aachen.de\/itc-events\/en\/wp-json\/wp\/v2\/tribe_events_cat?post=7331"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}