Introduction à OpenACC et OpenMP GPU

Nouveau en 2019 !

Depuis le début de la décennie 2010, l'utilisation des cartes graphiques (GPU) comme dispositifs d'accélération de certains types de calculs a crû de façon rapide et, alors qu'elles avaient été initialement conçues pour les jeux vidéo, leur utilisation pour le calcul scientifique a connu une progression régulière.

Bien qu'offrant des gains potentiels d'accélération très importants pour certains types de calcul, un frein notable à la généralisation de l'utilisation des cartes graphiques était la nécessité d'une programmation de très bas niveau à l'aide de bibliothèques spécifiques, ce qui requérait un haut degré d'expertise informatique.

Mais depuis peu, la programmation des cartes graphiques peut se réaliser par de simples jeux de directives (norme OpenACC et norme OpenMP depuis sa version 4.5), dans la droite ligne des paradigmes de programmation usuels sur les calculateurs scientifiques, ce qui rend dorénavant l'utilisation des GPU facilement abordable pour un grand nombre de programmeurs.

L'objectif de cette formation est de présenter ces nouveaux jeux de directives et de montrer, à travers leur mise en pratique, comment ils permettent aujourd'hui de tirer parti de l'énorme potentiel des cartes graphiques pour accélérer les applications scientifiques.

Responsable :

Objectif :

  • Être initié à la programmation des architectures hybrides accélérées (GPU) avec les modèles à directive OpenACC et OpenMP v4.5 GPU
  • Appréhender les concepts sous-jacents
  • Comprendre les différents intérêts de ces approches (simplicité d'implémentation, portabilité, performance, …) ainsi que les contraintes associées (gestion implicites ou explicite des données, synchronisations et dépendances)
  • Mettre en œuvre ces concepts sur des exemples concrets issus d'applications réelles

Public concerné :

ingénieurs et chercheurs

Pré-requis :

connaissance et utilisation de Fortran 90/95 ou C, connaissance de base d'OpenMP

Durée :

1 jour

Assistance :

maximale : 20 personnes, minimale : 10 personnes.

Programme :

  • Motivations
  • Présentation des concepts généraux (mémoire et modèle d'exécution)
  • Directives de gestion des données
  • Directives d'offload des noyaux de calcul, boucles, …
  • Optimisation de la gestion des données, des accès mémoire et des noyaux de calcul
  • Outils d'analyse de performance

50 % du temps sera consacré aux travaux pratiques (langage C ou Fortran)

Équipement :

supercalculateur(s) de l'IDRIS

Intervenant :

S’inscrire à cette formation :