Visualisation interactive et extensible de programmes parallèles à base de processus légers - INRIA - Institut National de Recherche en Informatique et en Automatique Accéder directement au contenu
Thèse Année : 1999

Interactive and extensible visualization of multithreaded parallel programs

Visualisation interactive et extensible de programmes parallèles à base de processus légers

Résumé

The research described in this dissertation was performed within the APACHE team (sponsored by CNRS, INPG, INRIA and UJF) whose aim is to study all the issues raised by combining efficiency and portability in the implementation of irregular applications. The work done by the APACHE project is integrated in the Athapascan software environment. In Athapascan, performance debugging is based on software tracing of the executions of parallel applications, followed by trace analysis and visualisation of the traced executions. The aim of this thesis was to provide programmers with a visualisation tool helping them to identify the performance errors of their programs by providing them with the clearest possible representation of the execution of these programs. The most important claim of this thesis is the design and implementation of a visualisation tool called Pajé combining the three most important characteristics of such visualisations tools : extensibility, interactivity and scalability. Extensibility is necessary to cope with the lack of parallel programming standard and ease the implementation of non foreseen visualizations in Pajé. It is supported by the architecture of Pajé as a graph of generic components with clearly defined communication protocols. Interactivity allows programmers to control the visualisation by moving in time or inspecting the contents of the displayed objects. To limit the amount of data that need to be managed in memory to implement interactivity, a data structure called observation window was defined together with the algorithms to move it efficiently in time. Scalability is related to the possibility of representing a potentially important number of graphical objects (threads, communications, tasks, etc...) evolving dynamically. It is mainly supported by allowing the visualisation at several levels of abstraction, such that moving from one level to another simulates zooming.
Cette thèse s'est déroulée au sein du projet APACHE (CNRS-INPG-INRIA-UJF) dont l'objectif est l'étude de l'ensemble des aspects liés à la mise en oeuvre efficace et portable d'applications irrégulières et dont les études sont concrétisées par l'environnement Athapascan. Dans l'environnement Athapascan le «débogage pour les performances» est basé sur le traçage logiciel des exécutions des applications parallèles suivi de l'analyse des traces et de la visualisation des exécutions tracées. L'objectif de la thèse était de fournir aux programmeurs un outil de visualisation les aidant à identifier les "erreurs de performances" de leurs programmes en leur donnant une représentation aussi claire que possible de l'exécution de ces programmes. La principale contribution de la thèse est la conception et la réalisation d'un outil appelé Pajé combinant les trois propriétés essentielles d'interactivité, d'extensibilité et d'aptitude au passage à l'échelle. L'extensibilité permet de prendre en compte l'absence de stabilisation des modèles de programmation parallèles et d'offrir la possibilité d'ajouter à Pajé des visualisations non envisagées lors de sa conception. Elle est assurée par une architecture en graphe de modules génériques, communiquants par des protocoles bien spécifiés. L'interactivité donne au programmeur le contrôle sur la visualisation par des actions telles que déplacement dans le temps ou inspection du contenu des objets visualisés, etc. Pour limiter le volume de données qu'elle implique de conserver en mémoire, une structure de données appelée fenêtre de visualisation a été définie ainsi que les algorithmes permettant de la faire glisser efficacement dans le temps. L'aptitude au passage à l'échelle est liée à la capacité de représenter un nombre potentiellement important d'objets graphiques (processus légers, communications, tâches, etc...) évoluant dynamiquement. Elle est essentiellement assurée en facilitant la visualisation à différents niveaux d'abstraction, en sorte que le passage d'un niveau à un autre simule une action de zoom.
Fichier principal
Vignette du fichier
tel-00004853.pdf (851.38 Ko) Télécharger le fichier

Dates et versions

tel-00004853 , version 1 (18-02-2004)

Identifiants

  • HAL Id : tel-00004853 , version 1

Citer

Benhur de Oliveira Stein. Visualisation interactive et extensible de programmes parallèles à base de processus légers. Réseaux et télécommunications [cs.NI]. Université Joseph-Fourier - Grenoble I, 1999. Français. ⟨NNT : ⟩. ⟨tel-00004853⟩
123 Consultations
176 Téléchargements

Partager

Gmail Facebook X LinkedIn More