[HYBRID] PATC: Parallel Programming Workshop
Date: 24/Oct/2022 Time: 09:30 - 28/Oct/2022 Time: 17:30
C6-E101, UPC premises and online via Zoom
Target group: Level: (All courses are designed for specialists with at least 1st cycle degree or similar background experience) INTERMEDIATE: for trainees with some theoretical and practical knowledge; ADVANCED: for trainees able to work independently and requiring guidance for solving complex problems.
Cost: There is no registration fee.
Primary tabs
Sessions will be in October 24th-28th 2022 from 9:30 – 13:00 and from 14:30 to 17:30 CET with 20’ break in between sessions and 1h30' lunch break - delivered online via Zoom and face to face at UPC premises
Day 1 (Monday October 24th)
Session 1 / 9:30 – 13:00 (20`rest in between)
1. Introduction to parallel architectures, algorithms design and performance parameters
2. Introduction to the MPI programming model
3. Practical: How to compile and run MPI applications
13:00 - 14:30 Lunch Break
Session 2 / 14:30 – 17:30 (20`rest in between)
2. Practical: Simple stencil
3. MPI: One-sided communication
Day 2 (Tuesday October 25th)
Session 1 / 9:30 – 13:00 (20`rest in between)
2. Practical: One-sided, shared-memory, topologies
13:00 - 14:30 Lunch Break
4. Practical: Valgrind for memory leaks
Day 3 (Wednesday October 26th)
Session 1 / 9:30 – 13:00 (20`rest in between)
2. Practical: Trace generation and trace analysis
13:00 - 14:30 Lunch Break
Session 2 / 14:30 – 17:30 (20`rest in between)
1. Shared-memory programming models, OpenMP fundamentals
2. Parallel regions and work sharing constructs
3. Synchronization mechanisms in OpenMP
4. Practical: heat diffusion in OpenMP
Day 4 (Thursday October 27th)
Session 1 / 9:30 – 13:00 (20`rest in between)
1. Tasking in OpenMP 3.0/4.0/4.5
2. Programming using a hybrid MPI/OpenMP approach
3. Practical: multisort in OpenMP and hybrid MPI/OpenMP
13:00 - 14:30 Lunch Break
Session 2 / 14:30 – 17:30 (20`rest in between)
1. Parallware: guided parallelization
2. Practical session with Parallware examples
Day 5 (Friday October 28th)
Session 1 / 9:30 – 13:00 (20`rest in between)
1. Introduction to the OmpSs programming model
2. Practical: heat equation example and divide-and-conquer
13:00 - 14:30 Lunch Break
Session 2 / 14:30 – 17:30 (20`rest in between)
1. Programming using a hybrid MPI/OmpSs approach
2. Practical: heat equation example and divide-and-conquer
END OF TRAINING COURSE