Sessions will be in October 14th-18th,2024 from 9:30 – 13:00 and from 14:30 to 17:30 CET with 20’ break in between sessions and 1h30' lunch break - delivered face to face at UPC Campus Nord premises in Barcelona
Day 1 (Monday October 14th)
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)
- MPI: Non-blocking communication, collective communication, datatypes
- Practical: Simple stencil
- MPI: One-sided communication
Day 2 (Tuesday October 15th)
Session 1 / 9:30 – 13:00 (20`rest in between)
- MPI: Hybrid Programming with Shared Memory and Accelerators; Non-blocking Collectives, Topologies, and Neighborhood Collectives
- Practical: One-sided, shared-memory, topologies
13:00 - 14:30 Lunch Break
Session 2 / 14:30 – 17:30 (20`rest in between)
- Parallel debugging in MareNostrumIII, options from print to Totalview
- Practical: GDB and IDB
- Practical: Totalview
- Practical: Valgrind for memory leaks
Day 3 (Wednesday October 16th)
Session 1 / 9:30 – 13:00 (20`rest in between)
- Introduction to Paraver: tool to analyze and understand performance
- 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 17th)
Session 1 / 9:30 – 13:00 (20`rest in between)
- Worksharing constructs (continued)
- OpenMP Tasking
- Practical: Worksharing and Tasking
13:00 - 14:30 Lunch Break
Session 2 / 14:30 – 17:30 (20`rest in between)
1. Codee: static code analysis for performance and Fortran modernization
2. Practical session: Codee for guided parallelization and Fortran modernization through auto-fixes
Day 5 (Friday October 18th)
Session 1 / 9:30 – 13:00 (20`rest in between)
1. Introduction to the OmpSs-2 programming model
2. Practical: cholesky, matrix multiplication, axpy, dot-product
13:00 - 14:30 Lunch Break
Session 2 / 14:30 – 17:30 (20`rest in between)
1. Programming using a hybrid MPI/OmpSs approach and TAMPI
2. Practical: heat equation example and n-body examples
END OF TRAINING COURSE