Description

Le processus d'optimisation de code se décompose principalement en deux phases :

  • Mesure de performance
  • Modification du programme dans le but d'améliorer la performance

Cette Action Nationale de Formation (ANF) contribue à la première étape qui est généralement faite de manière incomplète car les outils d'évaluation de performance sont malheureusement encore difficiles à mettre en place et à utiliser. L'objectif est de vous mettre le pied à l'étrier et vous rendre autonomes au maximum dans l'utilisation de ces outils, de les intégrer dans vos codes de calcul, de produire des métriques de performance et d'établir une feuille de route de développement logiciel pour optimiser votre code.

Cet objectif est réaliste grâce à l'intervention des experts du centre d'excellence européen POP qui regroupe les meilleurs experts dans ce domaine au niveau européen et les développeurs des outils Scalasca et Paraver.

Deux parcours :

  • Parcours « Base des outils » sur 2 jours ouvert à 25-30 personnes : présentation des outils Scalasca et Paraver (cours + TP).
  • Parcours « Diagnostic HPC » sur 3 jours supplémentaires et ouvert à 10 personnes : intégration des outils dans vos codes, productions et analyse des métriques de performance et établissement d'une feuille de route d'optimisation.

Prise en charge

Les cours, l'hébergement et les repas sont pris en charge par l'Action Nationale de Formation grâce au soutient financier du centre d'excellence EoCoE et du CNRS. Les frais de transports sont à la charge des participants. Les agents CNRS et membres des UMR associées peuvent s'addresser au service de formation permanente de leur Délégation Régionale pour la prise en charge de leur déplacement.

Un nombre de places limité

Vos motivations, votre projet et le code de calcul sur lequel vous souhaitez travailler, sa maturité et son impact sur les communautés scientifiques sont les critères qui seront pris en compte lors de l'évaluation des candidatures.

Date limite de pré-inscription : 17/05/2019

Réponse mi-juin.

Pour s'inscrire

Nombre de participants : 22

Programme

lundi 16/09

14:00 15:30 Pas de support disponible

Paraver : cours

Judit Gimenez, Germain Llort

Paraver (https://tools.bsc.es/paraver) a été développé pour répondre au besoin d'avoir une perception qualitative globale du comportement de l'application via une approche graphique pour ensuite se concentrer sur une analyse quantitative détaillée des problèmes.

Paraver n'est attaché à aucun modèle de programmation tant que le modèle peut être calé sur les trois niveaux de parallélisme exprimé dans la trace Paraver. Un exemple de parallélisme à deux niveaux serait une application hybride MPI + OpenMP. Le système de mesures lors des exécutions Extrae qui génèrant les traces Paraver supporte actuellement les interfaces de programmation MPI , OpenMP, pthreads, OmpSs et CUDA.

15:30 16:00 Pas de support disponible Pas de résumé disponible

Pause

16:00 18:00 Pas de résumé disponible

Paraver : pratique 1

Judit Gimenez, Germain Llort

Télécharger le support support 1
Télécharger le support support 2
Télécharger le support support 3
19:30 21:00 Pas de support disponible Pas de résumé disponible

Dîner

mardi 17/09

09:00 12:30 Pas de support disponible Pas de résumé disponible

Paraver : pratique 2

Judit Gimenez

12:30 14:00 Pas de support disponible Pas de résumé disponible

Déjeuner

14:00 15:30

Scalasca : cours

Brian Wylie

Télécharger le support support 1
Télécharger le support support 2
Télécharger le support support 3
Télécharger le support support 4
Télécharger le support support 5
Télécharger le support support 6
Télécharger le support support 7

Scalasca est un logiciel qui aide à l'optimisation des applications parallèles en mesurant et en analysant leur comportement durant l'exécution. L'analyse permet d'identifier des goulots d'étranglements potentiels – en particulier ceux concernant les communications et les synchronisations – et permet d'explorer leurs causes.

Scalasca supporte les codes pure MPI ainsi que les codes hybrides MPI + OpenMP.

15:30 16:00 Pas de support disponible Pas de résumé disponible

Pause

16:00 17:30 Pas de support disponible Pas de résumé disponible

Scalasca : pratique 1

Brian Wylie

19:30 21:00 Pas de support disponible Pas de résumé disponible

Dîner

mercredi 18/09

09:00 12:30 Pas de support disponible Pas de résumé disponible

Scalasca : pratique 2

Brian Wylie

12:30 14:00 Pas de support disponible Pas de résumé disponible

Déjeuner

14:00 19:00 Pas de support disponible Pas de résumé disponible

Social event

19:30 21:00 Pas de support disponible Pas de résumé disponible

Dîner

jeudi 19/09

09:00 12:30 Pas de support disponible Pas de résumé disponible

Code des participants : instrumentation / analyse

Tous les intervenants

12:30 14:00 Pas de support disponible Pas de résumé disponible

Déjeuner

14:00 17:30 Pas de support disponible Pas de résumé disponible

Code des participants : instrumentation / analyse

Tous les intervenants

19:30 21:00 Pas de support disponible Pas de résumé disponible

Dîner

vendredi 20/09

09:00 12:30 Pas de support disponible Pas de résumé disponible

Code des participants: instrumentation / analyse

Tous les intervenants

12:30 14:00 Pas de support disponible Pas de résumé disponible

Déjeuner

Organisation

  • Matthieu Haefele
  • Anne Cadiou
  • Fabrice Roy