NobleBlocks

Research indexJournal article

Advanced Parallel Programming

Achim, Louhivuori

Zenodo (CERN European Organization for Nuclear Research)10 Mar 2021Open access

NobleIDark:/48914/w1/20261004/7CA269CCDOI10.5281/zenodo.7476786

Free to read at the publisher

You can read the abstract here, or the full text at the publisher.

Read at the publisher

Abstract

Description This course addresses hybrid programming by combining OpenMP and MPI, as well as more advanced topics in MPI (communication topologies, user-defined data type, and one-side-communications). Also, parallel I/O is discussed and exemplified in the course. The course consists of lectures and hands-on exercises on Puhti. The participants will be informed on connections details before the course. Learning outcome After the course the participants should be able to know how to combine MPI and OpenMP programming models to use full nodes efficiently, how to define its own sub-communicators in order to take advantage of network topology or special data patterns, define its own custom datatypes, and know how to efficiently save data in parallel using MPI-IO or HDF5, as well as understand the basics of the one-sided MPI communication. Prerequisites and content level In order to take the course the participant should be fluent in FORTRAN and/or C programming languages and have taken the PTC course Introduction to Parallel Computing or have similar background knowledge of MPI and OpenMP. The content level of the course is broken down as: beginner's - 14%, intermediate - 51%, advanced - 35%, community-targeted content - 0%. Agenda Day 1, Wednesday March 10 09.00-09.45 Course intro, MPI & OpenMP recap 9:45 -9:50 Break 09:50-10.20 Hybrid MPI + OpenMP programming I 10.20-12.00 Exercises (offline) 12:00 - 13:00 Lunch time recommended 13.00-13.30 Exercises (offline) 13.30-14.15 Hybrid MPI + OpenMP programming II 14.15-15.30 Exercises (offline) 15.30-16.00 Q&A session Day 2, Thursday March 11 09.00-09.45 Advanced MPI I: User-defined datatypes 9:45 -9:50 Break 09:50-10.20 Advanced MPI II: Communication topologies 10.20-12.00 Exercises (offline) 12:00 - 13:00 Lunch time recommended 13.00-13.30 Exercises (offline) 13.30-14.15 Advanced MPI III: One-sided communication 14.15-15.30 Exercises (offline) 15.30-16.00 Q&A session Day 3, Friday March 12 09.00-09.30 Parallel I/O I: Simple POSIX with MPI 9:30 -9:35 Break 09:35-11.00 Parallel I/O II: MPI-IO 11.00-12.00 Exercises (offline) 12:00 - 13:00 Lunch time recommended 13.00-14.30 Exercises (offline) 14.30-15.00 Parallel I/O III: with HDF5 15.00-15.30 Exercises (offline) 15.30-16.00 Q&A session

Discussion

Topics

More

Suggest a correction or report