Programmation parallèle avec MPI4py

Programmation parallèle avec MPI4py#

English

À propos#

  • Cet atelier de formation est de niveau intermédiaire.

  • L’objectif principal est d’apprendre à utiliser une bibliothèque de communication entre processus pour faire du calcul parallèle distribué.

  • Les différents concepts sont montrés avec des exemples en langage Python, mais ils sont classiquement programmés en C/C++ et en Fortran.

Table des matières#

  1. Introduction

    1. Machine à mémoire distribuée

    2. Des questions à se poser

    3. Stratégies de division du calcul

  2. Premiers pas avec MPI

    1. Qu’est-ce que MPI?

    2. Structure d’un code MPI

    3. Parallélisation explicite

    4. Environnement requis pour utiliser MPI

    5. Les communications via MPI

  3. Communications point-à-point

    1. Envois et réceptions de données

    2. Éviter les situations d’interblocage

    3. Communications non bloquantes

  4. Communications collectives

    1. Déplacements de données

    2. Calculs collectifs

  5. Conclusion

    1. MPI dans les autres langages

    2. Défis de parallélisation supplémentaires

    3. Bonus - Notions avancées

Note

Cet atelier a été conçu pour être guidé par un formateur ou une formatrice de Calcul Québec sur notre plateforme infonuagique. Les fichiers nécessaires pour les exercices sont dans votre répertoire personnel sur la plateforme.

Si vous suivez cet atelier par vous-même, vous pouvez télécharger les fichiers nécessaires et réaliser les exercices sur n’importe quelle grappe de Calcul Québec ou de l’Alliance de recherche numérique du Canada. Le temps d’attente pour l’exécution des tâches sera toutefois plus long que sur la plateforme infonuagique.