HAL Id: tel-00010555
https://tel.archives-ouvertes.fr/tel-00010555
Submitted on 12 Oct 2005
HAL is a multi-disciplinary open access archive for the deposit and dissemination of sci- entific research documents, whether they are pub- lished or not. The documents may come from teaching and research institutions in France or abroad, or from public or private research centers.
L’archive ouverte pluridisciplinaire HAL, est destinée au dépôt et à la diffusion de documents scientifiques de niveau recherche, publiés ou non, émanant des établissements d’enseignement et de recherche français ou étrangers, des laboratoires publics ou privés.
Traçage flexible d’exécutions de programmes parallèles
Cyril Guilloud
To cite this version:
Cyril Guilloud. Traçage flexible d’exécutions de programmes parallèles. Réseaux et télécommunica-
tions [cs.NI]. Institut National Polytechnique de Grenoble - INPG, 2004. Français. �tel-00010555�
INSTITUT NATIONAL POLYTECHNIQUE DE GRENOBLE
N°attribué par la bibliothèque /_/_/_/_/_/_/_/_/_/_/
THÈSE
pour obtenir le grade de DOCTEUR DE L’INPG
Spécialité : “Informatique, Systèmes et Logiciels”
préparée au laboratoire Informatique et Distribution
dans le cadre de l’École Doctorale “Mathématiques, Sciences et Technologies de l’Information, Informatique”
présentée et soutenue publiquement par
Cyril Guilloud
Le 5 février 2004 Titre :
Traçage flexible d’exécutions de programmes parallèles
Directeur de thèse : Brigitte Plateau
Co-directeur : Jacques Chassin de Kergommeaux
JURY
M. Andrzej Duda
Président
M. José C. Cunha
Rapporteur
M. Bertil Folliot
Rapporteur
M me
Brigitte Plateau
Examinatrice
M. Jaques Chassin de Kergommeaux
Examinateur
M me
Pasale Rossé-Laurent
Examinatrice
bien voulu examiner e travail. Je suis très reonnaissant à Andrzej Duda d'avoir
aepté de présider lejury, à José Cuhna etBertil Folliotpour leurs ommentaires
avisés sur e manusrit et à Pasale Rossé pour avoir suivi e travail au ours des
trois dernières années. Jedois aussi de partiuliers remeriementà BrigittePlateau
pour m'avoir permis d'eetuer ette thèse et pour son enadrement lors de mon
DEA.
Jaques Chassin de Kergommeaux à été un direteur de thèse partiulièrement
attentif à tous les aspets tehniques et rédationnels de ette thèse. Ses onseils
toujours pertinents(bien queje lelesaipas toujours suivis...),sadisponibilitéetsa
patiene pour les nombreuses reletures du manusrit ont permis de mener à bien
ette thèse.
DenombreuxaspetstehniquesdutravailprésentéiidoiventbeauoupàJaques
Briat, je l'en remerie vivement. Je tiens àsaluer également : tous les membres du
laboratoireID, Philippe Waille,Jean-Mar, Thierry, PhilippeAugerat, Jean-Louis,
Denis etDenis,Bruno, Olivier, Guillaume,ave une mentionspéialepour Grégory
dont ladisponibilitéetla apaité àrésoudre tous lesproblèmes sontun atout pré-
ieux; tous les thésards du laboratoire, PF, Georges, Bruno, Remi, Cyrille, Anne,
Corine,Florene,Emmanuel(s),Mauriio,Jésus,Renaud,Gustavoettouslesautres;
ukasz pour les longues disussions politiques et religieuses qui ont pimentées es
trois ans;lesstagiairesquej'aienadréave beauoup de plaisir(Xiaoyan,Vinent,
Alaa); les assistantes Hélène, Marion et Anne-Laure pour leur talent à vainre les
imbrogliosadministratifsrelatifsaux diverses missions eetuées.
L'éradiation d'un très grand nombre de fautes d'orthographe, de grammaire et
de français est à porter au rédit des reletures attentives de Myriam, André et
Aline.
Cettethèseaétéunlongparours,etettedernièreannéepartiulièrementéprou-
vante, 'est pourquoije tiensà remerier très haleureusement toutes les personnes
qui m'ont aidées plus ou moins diretement sur un plan plus personnel que teh-
nique àen arriverauterme:toutd'abordmafamilleetnosamis pour leurprésene
et leur soutient et que je ne pourrait susamment remerier ii; et pour nir, un
grand meri à tous mes amis : tout d'abord à Franis, qui, malgré ses goûts musi-
aux etinématographiquespartiulièrementéletiques futun oloatairedes plus
agréables etpuisàtouslesautres,Cathy,Grégoire,Magali,Pierre(Bontron etNey-
ron), Aline,Manu, Erwan, Marion, tous lesOliviers (Guyotot, Cinquin, Mansiot et
Maury), Matthieu,Margueritte,Karim,Carole,Remi,Jean-Gilles,Tanguy,Pauline,
Romain, Sophie,Sylvia, Jean-Christophe, Magali, Éri(et Bastien).
I Introdution 1
I.1 Le parallélisme. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
I.2 Le laboratoireInformatique et Distribution(ID-Imag) . . . . . . . . 1
I.3 Contribution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
I.4 Organisation de e doument . . . . . . . . . . . . . . . . . . . . . . . 4
II Mise au point de programmes parallèles 7 II.1 Intérêts etontraintes du parallélisme . . . . . . . . . . . . . . . . . 7
II.2 Les grappes de PC . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
II.3 Utilisation eae de grappes . . . . . . . . . . . . . . . . . . . . . . 10
II.4 Débogagedes logiiels . . . . . . . . . . . . . . . . . . . . . . . . . . 11
II.4.1 Débogagepour laorretion . . . . . . . . . . . . . . . . . . . 13
II.4.2 Débogagepour lesperformanes. . . . . . . . . . . . . . . . . 14
II.4.2.1 Estimationdesperformanes . . . . . . . . . . . . . . . 14
II.4.2.2 Comparaisondes performanes . . . . . . . . . . . . . . 15
II.4.2.3 Reherhe etorretion de problèmesde performane . . 15
II.5 Observation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
II.5.1 Pourquoi observer . . . . . . . . . . . . . . . . . . . . . . . . 17
II.5.2 Observation en ligne oupost mortem . . . . . . . . . . . . . . 18
II.6 Conlusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
III Tehniques d'observation et de ollete de données 21 III.1 Tehniques d'observation . . . . . . . . . . . . . . . . . . . . . . . . 21
III.1.1 Surveillane (monitoring) . . . . . . . . . . . . . . . . . . . . 21
III.1.1.1 Surveillanesystème etréseau . . . . . . . . . . . . . . 23
III.1.1.2 Surveillanematérielle . . . . . . . . . . . . . . . . . . 23
III.1.2 Débogage interatif . . . . . . . . . . . . . . . . . . . . . . . 24
III.1.3 Génération d'indiateursstatistiques . . . . . . . . . . . . . . 25
III.1.4 Prolage(proling) . . . . . . . . . . . . . . . . . . . . . . . 25
III.1.5 Observation omportementale . . . . . . . . . . . . . . . . . 26
III.2 Colletede données . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
III.2.1 Éhantillonnage . . . . . . . . . . . . . . . . . . . . . . . . . 27
III.2.2 Chronométrage . . . . . . . . . . . . . . . . . . . . . . . . . 27
III.2.3 Comptage . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
III.2.3.1 Lesompteurs matérielsde performane . . . . . . . . . 28
III.2.4 Traçageévénementiel . . . . . . . . . . . . . . . . . . . . . . 31
III.2.4.1 Traçage matériel . . . . . . . . . . . . . . . . . . . . . 32
III.2.4.2 Traçage hybride . . . . . . . . . . . . . . . . . . . . . 33
III.2.4.3 Traçage logiiel . . . . . . . . . . . . . . . . . . . . . 34
III.2.5 Comparaisonsdes tehniques . . . . . . . . . . . . . . . . . . 34
III.3 Instrumentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
III.3.1 Tehniques d'instrumentation. . . . . . . . . . . . . . . . . . 36
III.3.2 Instrumentationdu binaireexéutable . . . . . . . . . . . . . 36
III.3.3 Instrumentationdynamique à l'exéution . . . . . . . . . . . 37
III.3.4 Utilisationd'une bibliothèque instrumentée . . . . . . . . . . 37
III.3.5 Instrumentationdu ode soure . . . . . . . . . . . . . . . . 38
III.3.5.1 Instrumentation automatique . . . . . . . . . . . . . . 38
III.3.5.2 Instrumentation manuelle . . . . . . . . . . . . . . . . 39
III.4 Fontionsd'enregistrement . . . . . . . . . . . . . . . . . . . . . . . 39
III.4.1 Rledes fontions d'enregistrement . . . . . . . . . . . . . . 40
III.4.2 Eaité de l'enregistrement . . . . . . . . . . . . . . . . . . 40
III.4.3 Ativation /désativation du traçage . . . . . . . . . . . . . 40
III.5 Conlusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
IV Interprétation des observations 43 IV.1 Rledes outilsde représentation . . . . . . . . . . . . . . . . . . . . 43
IV.2 Caratéristiques des tehniques de représentation de données . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
IV.2.1 Salabilité . . . . . . . . . . . . . . . . . . . . . . . . . . 45
IV.2.2 Interativité . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
IV.2.3 Observation multi-niveaux . . . . . . . . . . . . . . . . . . . 46
IV.2.4 Flexibilité . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
IV.3 Représentation des données . . . . . . . . . . . . . . . . . . . . . . . 48
IV.3.2 Indiateurs globaux . . . . . . . . . . . . . . . . . . . . . . . 49
IV.3.3 Représentation graphique 2D . . . . . . . . . . . . . . . . . . 50
IV.3.4 Troisdimensions etréalité virtuelle . . . . . . . . . . . . . . 51
IV.3.5 Représentation sonore . . . . . . . . . . . . . . . . . . . . . 51
IV.4 Conlusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
V Outils d'observation 53 V.1 Systèmes d'observation logiielsexistants. . . . . . . . . . . . . . . . 53
V.1.1 VampirVampirTrae . . . . . . . . . . . . . . . . . . . . . 53
V.1.2 Tau . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
V.1.3 SvPablo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
V.1.4 Xmpi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
V.2 Pajé . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
V.2.1 Ahage / Visualisation . . . . . . . . . . . . . . . . . . . . . 60
V.2.2 Interativité . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
V.2.2.1 Ahage desidentiants . . . . . . . . . . . . . . . . . 62
V.2.2.2 Inspetion. . . . . . . . . . . . . . . . . . . . . . . . . 62
V.2.3 Salabilité . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
V.2.3.1 Filtrage . . . . . . . . . . . . . . . . . . . . . . . . . . 64
V.2.3.2 Agrégation . . . . . . . . . . . . . . . . . . . . . . . . 65
V.2.3.3 Zoom . . . . . . . . . . . . . . . . . . . . . . . . . 65
V.2.4 Génériité . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
V.2.5 Format Pajé . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
V.2.5.1 Desriptiondu format . . . . . . . . . . . . . . . . . . 67
V.2.5.2 Modèle de visualisation . . . . . . . . . . . . . . . . . . 68
V.2.5.3 Instaniationde lahiérarhie . . . . . . . . . . . . . . . 69
V.2.5.4 Événements de l'exéution . . . . . . . . . . . . . . . . 70
V.3 Conlusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
VI Traçage exible 73 VI.1 Flexibilitédu traçage . . . . . . . . . . . . . . . . . . . . . . . . . . 73
VI.2 Dénitiondes événements. . . . . . . . . . . . . . . . . . . . . . . . 75
VI.3 Lesformats de trae. . . . . . . . . . . . . . . . . . . . . . . . . . . 76
VI.3.1 Tailledes traes . . . . . . . . . . . . . . . . . . . . . . . . . 77
VI.3.2 Exploitationdes traes . . . . . . . . . . . . . . . . . . . . . 78
VI.3.2.1 Utilisationd'unformat de trae standard . . . . . . . . 78
VI.3.2.2 Conversions entre formatsde trae. . . . . . . . . . . . 79
VI.3.2.3 Génériité desformats detrae . . . . . . . . . . . . . 80
VI.4 Distintion des formats . . . . . . . . . . . . . . . . . . . . . . . . . 81
VI.4.1 Format brut . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
VI.4.1.1 Enregistrement desévénements . . . . . . . . . . . . . 82
VI.4.1.2 Releture desévénements . . . . . . . . . . . . . . . . 83
VI.4.2 Format élaboré . . . . . . . . . . . . . . . . . . . . . . . . . . 84
VI.4.3 Conversion . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
VI.4.3.1 Règlesde réériture . . . . . . . . . . . . . . . . . . . 85
VI.5 Manipulation des traes . . . . . . . . . . . . . . . . . . . . . . . . . 86
VI.5.1 Colletedes traes . . . . . . . . . . . . . . . . . . . . . . . . 86
VI.5.2 Filtrage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
VI.5.3 Agrégationde données . . . . . . . . . . . . . . . . . . . . . 87
VI.5.4 Tri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
VI.6 Conlusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
VII Validation expérimentale 91 VII.1 Conguration etinstrumentation . . . . . . . . . . . . . . . . . . . 91
VII.1.1 Observation d'Athapasan . . . . . . . . . . . . . . . . . . 92
VII.1.2 Dénition des événements . . . . . . . . . . . . . . . . . . . 93
VII.1.3 Instrumentation. . . . . . . . . . . . . . . . . . . . . . . . . 94
VII.1.4 Exéutionet génération des traes . . . . . . . . . . . . . . 95
VII.2 Conguration de laonversion . . . . . . . . . . . . . . . . . . . . . 96
VII.2.1 Modèle graphique . . . . . . . . . . . . . . . . . . . . . . . . 96
VII.2.2 Règles de réériture . . . . . . . . . . . . . . . . . . . . . . . 96
VII.3 Visualisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
VII.4 Conlusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
VIIIConlusion et perspetives 103
Bibliographie 109