Calcul distribué

L’objectif de cette UE est de donner aux étudiants des compétences en algorithmique parallèle, utilisée par accélérer les traitements ou encore traiter des problèmes de grande taille. Les deux principaux contextes de systèmes parallèles, à mémoire partagée (multi-cœurs) ou distribuée (réseau de machines), seront détaillés.

Les notions fondamentales de conception et développement, ainsi que d’évaluation des performances seront abordées. Le cours sera illustré par des exemples concrets de mise en œuvre avec les bibliothèques OpenMP et MPI.

Prérequis

  • Programmation impérative (C/C++).
  • Notions élémentaires de complexité.

Acquis d’apprentissage

  • Parallélisation d’algorithmes séquentiels.
  • Développement d’algorithmes multi-threads.
  • Développement d’algorithmes distribués avec communications explicites.

Compétences visées

  • Concevoir et mettre en œuvre des algorithmes parallèles pour les systèmes à mémoire
    partagée et/ou distribuée.

Parcours SIS / Orientation SIRAV