Oct 18 – 22, 2021
CET timezone

Scientific Program

Agenda:

Sessions will be in October 18th-22nd 2021 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

Day 1 (Monday October 18th)

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)

  1. MPI: Non-blocking communication, collective communication, datatypes
  2. Practical: Simple stencil
  3. MPI: One-sided communication

Day 2 (Tuesday October 19th)

Session 1 / 9:30 – 13:00 (20`rest in between)

  1. MPI: Hybrid Programming with Shared Memory and Accelerators; Non-blocking Collectives, Topologies, and Neighborhood Collectives
  2. Practical: One-sided, shared-memory, topologies

13:00 - 14:30 Lunch Break

Session 2 / 14:30 – 17:30 (20`rest in between)
1. Parallel debugging in MareNostrumIII, options from print to Totalview
2. Practical: GDB and IDB
3. Practical: Totalview
4. Practical: Valgrind for memory leaks

Day 3 (Wednesday October 20th)

Session 1 / 9:30 – 13:00 (20`rest in between)

  1. Introduction to Paraver: tool to analyze and understand performance
  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 21st)

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 22nd)

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