Contribution to automatic performance analysis of parallel applications - Archive ouverte HAL
Hdr Année : 2021

Contribution to automatic performance analysis of parallel applications

Contribution à l’analyse automatique de performances d’applications parallèles

Résumé

High Performance Computing is now a strategic resource as it allows to simulate complex phenomena in order to better understand them. While ten years ago, HPC was mostly used in specific domains such as climate research, weather forecasting, or molecular modeling, it now spreads to most scientific disciplines including genomics and artificial intelligence. Processing large amounts of data requires to efficiently exploit parallel and distributed computers. When designing a parallel application, a developer has to understand how the application executes on a supercomputer. Our research activities aim at designing tools that relieve the developer from this burden. Our research necessitates two phases: to collect data when an application executes, and to analyze the collected data in order to improve the application performance. Our first contribution consists of several performance collection tools. We present EZTrace, a tracing framework for parallel applications that allows users to easily capture the behavior of their application. We also present NumaMMA, a memory profiler that traces applications and analyzes their memory access patterns. Our second contribution focuses on automatic performance analysis. We developed algorithms that detects the overal structure of an application from an execution trace and that filters out duplicate information. We also design a versatile metric that detects any kind of contention problem by using a differential execution analysis technique. Finally, we designed a methodology for detecting scalability issues in OpenMP applications.
Le calcul haute performance est désormais une ressource stratégique car il permet de simuler des phénomènes physiques complexes afin de mieux les comprendre. Alors qu'il y a dix ans, le calcul haute performance était surtout utilisé dans des domaines spécifiques tels que la odélisation du climat, les prévisions météorologiques ou la biologie moléculaire, il s'étend désormais à la plupart des disciplines scientifiques, y compris la génomique et l'intelligence artificielle. Le traitement de grandes quantités de données nécessite d'exploiter efficacement des machines parallèles et distribués. Lors de la conception d'une application parallèle, un développeur doit comprendre comment l'application s'exécute sur un supercalculateur. Nos activités de recherche visent à concevoir des outils qui soulagent le développeur de ce fardeau. Nos travaux de recherches nécessitent deux phases : collecter des données lors de l'exécution d'une application et analyser les données collectées afin d'améliorer les performances de l'application. Dans une première contribution, nous présentons plusieurs outils de collecte de performances. Nous présentons EZTrace, un outil permettant de tracer l'exécution d'applications parallèles. Il permet aux utilisateurs de capturer facilement le comportement de leur application. Nous présentons également NumaMMA, un profileur mémoire qui trace les applications et analyse leurs schémas d'accès à la mémoire. Notre deuxième contribution porte sur l'analyse automatique de performances. Nous avons développé des algorithmes qui détectent la structure globale d'une application à partir d'une trace d'exécution et qui éliminent les information superflues. Nous avons également conçu une métrique capable de détecter tout type de problème de contention en utilisant une technique d'analyse d'exécution différentielle. Enfin, nous avons conçu une méthodologie pour détecter des problèmes de scalabilité dans les applications OpenMP.
Fichier principal
Vignette du fichier
hdr.pdf (869.5 Ko) Télécharger le fichier
Origine Fichiers produits par l'(les) auteur(s)

Dates et versions

tel-03278305 , version 1 (05-07-2021)

Identifiants

  • HAL Id : tel-03278305 , version 1

Citer

François Trahay. Contribution to automatic performance analysis of parallel applications. Operating Systems [cs.OS]. Institut Polytechnique de Paris, 2021. ⟨tel-03278305⟩
180 Consultations
261 Téléchargements

Partager

More