Analyse automatique de performances pour OpenMP
Stage Paris (Paris) Développement informatique
Description de l'offre
Détail de l'offre
Informations générales
Entité de rattachement
Le Commissariat à l'énergie atomique et aux énergies alternatives (CEA) est un organisme public de recherche.Acteur majeur de la recherche, du développement et de l'innovation, le CEA intervient dans le cadre de ses quatre missions :
. la défense et la sécurité
. l'énergie nucléaire (fission et fusion)
. la recherche technologique pour l'industrie
. la recherche fondamentale (sciences de la matière et sciences de la vie).
Avec ses 16000 salariés -techniciens, ingénieurs, chercheurs, et personnel en soutien à la recherche- le CEA participe à de nombreux projets de collaboration aux côtés de ses partenaires académiques et industriels.
Référence
2018-4552-708Description du poste
Domaine
Mathématiques, information scientifique, logiciel
Contrat
Stage
Intitulé de l'offre
Analyse automatique de performances pour OpenMP
Sujet de stage
Analyse automatique de performances pour OpenMP
Durée du contrat (en mois)
6 mois
Description de l'offre
Depuis la démocratisation des processeurs multi-cœurs et many-cœurs, le modèle de programmation parallèle OpenMP est de plus en plus utilisé dans les applications à haute performance pour exploiter les capacités des nœuds de calculs des supercalculateurs. Il propose, entre autres, de partager du travail et des données, permettant ainsi une réduction de la consommation mémoire et un meilleur équilibrage de charge. Mais son approche incrémentale peut être complexe et il est difficile de comprendre les performances d'un tel code en pleine évolution. Pour cela, l'analyse de ces performances est une étape importante du processus de développement. Les outils capables de retracer les différentes phases de l'application aident le développeur à optimiser les parties critiques du programme. Toutefois, l'analyse de ces traces est actuellement un travail essentiellement humain : le développeur d'application visualise une représentation graphique de la trace et doit chercher la cause des mauvaises performances de l'application. Il devient alors nécessaire de développer des algorithmes afin d'automatiser cette recherche. L'objectif global de ce stage est d'automatiser l'analyse de traces d'exécution de programmes OpenMP afin de détecter les problèmes de performance et leur source. Il se composera des étapes suivantes : - Détecter les phases de l'application s'exécutant plus lentement qu'habituellement (par exemple, une fin de région parallèle ou une barrière qui prend plus de temps). - Rechercher de manière automatique la source d'un problème de performance. Pour cela, les événements précédant un problème et les dépendances entre threads devront être analysés. Ce type d'analyse devrait permettre de détecter la ou les sources probables d'un problème de performance, même lorsqu'une cascade d'évènements conduit à la détérioration des performances. - Implémenter les algorithmes en s'appuyant sur l'interface d'outil OMPT afin de capturer les événements importants d'une application OpenMP. STAGE DE 5 A 6 MOIS - BAC +5 - Informatique
Profil recherché
Profil du candidat
MASTER/INGENIEUR
C, OpenMP, MPC
BAC + 5