HAL Id: tel-00010476
https://tel.archives-ouvertes.fr/tel-00010476
Submitted on 7 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.
d’applications parallèles avec communications
Renaud Lepère
To cite this version:
Renaud Lepère. Approches algorithmiques pour l’ordonnancement d’applications parallèles avec com- munications. Réseaux et télécommunications [cs.NI]. Institut National Polytechnique de Grenoble - INPG, 2001. Français. �tel-00010476�
T H È S E
pour obtenir letitrede
Doteur de l'INPG
Spéialité : Informatique : Systèmes et Communiations
préparée au Laboratoire Informatiqueet Distribution
dansleadrede l'Éole Dotorale Mathématiqueset Informatique
présentéeetsoutenue publiquement
par
Renaud Lepère
le 6otobre 2001
Approhes algorithmiques
pour l'ordonnanement d'appliations parallèles ave ommuniations
Direteur de thèse
M. DenisTrystram
Jury
M. Philippe Jorrand, Président
Mme. AlixMunier, Rapporteur
M. KlausJansen, Rapporteur
M. DenisTrystram, Direteur de thèse
M. Ed Coffman, Examinateur
M. FrédériGuinand, Examinateur
Je remerie Denis Trystrampour sa onane, sonsoutien etson suivipendant
toute ma thèse. Travailler ave lui a été pour moi une expériene très agréable,
sympathique et frutueuse. Je remerie Brigitte Plateau pour m'avoir aueilli au
sein du laboratoire ID-IMAG ainsi que tous les membres du laboratoire pour leur
aueilhaleureux etlesnombreuses disussionssympathiques àlaCafet.
Je remerie mes rapporteurs Alix Munier et Klaus Jansen ainsi que Frédéri
Guinand pour leurs letures attentives et leurs suggestions. Je remerie également
lesautresmembresdujuryEdComanetPhilippeJorrandpouravoirpartagéave
moil'aboutissementdemontravaildethèse.Jelesremerieaussipourl'intérêtqu'ils
ontmanifesté pour e travail.
Je tiens àremerierégalement les autrespersonnesave qui j'aipu ollaboréau
ours de ette thèse et notamment Borut Robi£ pour m'avoir aueilli en Slovénie,
ChristopheRapine qui étaittoujours partant pour aller travailler dansunafé, Ge-
rhard Woeginger pour nos ollaborations életroniques frutueuses, enn Gregory
MouniéetRémi Revirepour letravail agréable quenousavonsmenéensemble. J'ai
eu beauoup deplaisir à travailler ave eux.
JesouhaiteraisremeriermesollèguesdebureauEkbel,François,Gilles,Anneet
Arnaudetplusgénéralement touteslespersonnesquej'aitoyéesaulabopourleur
gentillesseetpourles nombreusesdisussionsquenousavonspartagé.Meriaussià
tous les joueurs ave qui j'ai eu l'oasion de m'amuser pendant estrois années et
notammentauxposeursdebombesAlfredo,Chris,Gerson,Gustavo,Greg,Olivieret
Mathias,auxjoueursdeGoAlexis,TimothéeetsurtoutGillespournousavoirinitiés
à e jeu,et aux amateurs de Starraft, pour ne pas faire de délations (ertains ont
préférégarderl'anonymat)jeneiteraisqueleurspseudos(Shhht,Cris,Geo,Remi,
Simon, Gilles, Pfd, God, Alex, Mat). Un dernier mot enn pour ma petite famille
qui a supporté patiemment les soirées de rédation et qui m'a enouragé jusqu'au
bout.
1 Motivation, modèles et onepts 13
Modélisationd'une appliation . . . . . . . . . . . . . . . . . . . . . . . . 15
Graphe depréédene . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Graphe deot de données . . . . . . . . . . . . . . . . . . . . . . . . 16
Construtionde lareprésentation d'uneappliation . . . . . . . . . . 17
Desription desdiérentes mahines parallèles . . . . . . . . . . . . . . . . 19
Modélisationdesommuniations . . . . . . . . . . . . . . . . . . . . . . . 21
Lesmodèles à ommuniations expliites . . . . . . . . . . . . . . . . 21
Le modèledestâhes malléables. . . . . . . . . . . . . . . . . . . . . 26
Conlusion partielle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
2 Ordonnanement ave prise en ompte des ommuniations 31 Ordonnanement sous lemodèle délai . . . . . . . . . . . . . . . . . . . . 32
Complexité . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Algorithmes d'approximation . . . . . . . . . . . . . . . . . . . . . . 34
Heuristiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
Ordonnanement sous lemodèle destâhesmalléables . . . . . . . . . . . 39
Tâhes indépendantes . . . . . . . . . . . . . . . . . . . . . . . . . . 39
Tâhes ave relation de préédene . . . . . . . . . . . . . . . . . . . 41
Conlusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
3 Ordonnanement de tâhes malléables 43 Notations etdénitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
Contiguité desordonnanements . . . . . . . . . . . . . . . . . . . . 47
Del'alloation vers l'ordonnanement . . . . . . . . . . . . . . . . . . . . 48
Ordonnanement de tâhesmultiproesseurs . . . . . . . . . . . . . . 49
Choixd'une bonne alloation . . . . . . . . . . . . . . . . . . . . . . 51
Versune meilleuregarantie . . . . . . . . . . . . . . . . . . . . . . . 53
Approximationduproblème de l'alloation . . . . . . . . . . . . . . . . . 55
Cas desarbres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
Cas d'ungraphegénéral . . . . . . . . . . . . . . . . . . . . . . . . . 58
Conlusion etperspetives . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
4 Regroupement 61 Introdution. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
Regroupement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
Notations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
Algorithmede déompositionréursive . . . . . . . . . . . . . . . . . . . . 68
Shéma général del'algorithme . . . . . . . . . . . . . . . . . . . . . 69
Le problème de partitionement de DAG . . . . . . . . . . . . . . . . 70
Simulations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
Travauxen ourset perspetives . . . . . . . . . . . . . . . . . . . . . . . 77
Quellegarantie espérer pour une telleapprohe? . . . . . . . . . . . 78
Etude duproblème departitionnement de DAG . . . . . . . . . . . . 78
Vers d'autresmodèles de ommuniation. . . . . . . . . . . . . . . . 79
Intégration dansAthapasan1 . . . . . . . . . . . . . . . . . . . . . . 80
5 Ordonnanement ave dupliation 83 Introdution. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
Une borne inférieurede ladated'exéution d'unetâhe . . . . . . . . . . 85
Versl'ordonnanement degraphes quelonques . . . . . . . . . . . . . . . 87
Un algorithmepar phases . . . . . . . . . . . . . . . . . . . . . . . . 87
Analyse de l'algorithme . . . . . . . . . . . . . . . . . . . . . . . . . 87
Ordonnanement de graphesde petitestailles . . . . . . . . . . . . . . . . 89
Un autre algorithmepar phase . . . . . . . . . . . . . . . . . . . . . 90
Seletion destâhes. . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
Ordonnanement destâhesséletionnées . . . . . . . . . . . . . . . 93
Garantie de performane . . . . . . . . . . . . . . . . . . . . . . . . . 93
Conlusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
Mener àbiendessimulations numériques, desprévisions météorologiques ou en-
oreréerdesimagesdesynthèsenéessitentdesressouresdealulsetdemémoire
sans esse roissantes. La préision et la omplexité des diérents modèles sur les-
quels es appliations sont basées augmentent régulièrement. Depuis longtemps, le
parallélisme apparaît omme une solution pour répondre à ette forte demande de
performanes. Bien que les performanes des mahines séquentielles doublent tous
les 18 mois, l'utilisation de mahines parallèles pourrait permettre de gagner plu-
sieurs ordres de grandeurs de performanes. Intuitivement, on peut penser qu'un
programme pourra s'exéuter m fois plus rapidement sur m mahines que sur une
seule. Cependant le développement d'appliations sur des mahines parallèles reste
déliat.
Lesmahinesparallèles évoluent rapidement, etles supportsd'exéutionont des
propriétés distintes. Les mahines peuvent, par exemple, disposer d'une mémoire
partagéephysiquepourpermettreauxdiérentesunitésdealulsdeoopérer.Dans
d'autres as, les mahines parallèles sont onstruites autour d'unités de alul do-
tées de leur propre mémoire. Ces unités ommuniquent entre elles par éhange de
messages; on parle aussi de mahines à mémoire distribuée. Aujourd'hui, on as-
siste audéveloppement rapidede mahinesparallèles de e type :les grappes. Elles
sont onstruites à partir de l'interonnexion de omposants standard don bon
marhé, omme les stations de travail ou les ordinateurs personnels (PC). Ces ar-
hitetures, pouvant être onstituées de plusieurs entaines de proesseurs, orent
desperformanespotentiellement exeptionnellespourunprixmodeste.Cependant,
leur exploitation restetrès déliate etpose enorede très nombreux problèmes.
Les diultéssont multiples etde natures diérentes. Indépendamment del'hé-
térogénéité etde l'évolution rapide desmahines parallèles, les diultésse situent
au niveau algorithmique, au niveau des langages de programmation parallèle pour
exprimer le parallélisme d'une appliation, ainsiqu'au niveau de l'ordonnanement
et du plaement des diérents aluls d'une appliation parallèle sur les unités de
aluls, les proesseurs.
Atuellement, iln'existeauuneapprohe généralepourdévelopperuneapplia-
tionparallèle. Enpratique,sur unearhiteture à mémoiredistribuée, l'approhe la
plusrépandue onsiste àutiliserdiretement une bibliothèque basniveau d'éhange
demessages(ommeMPIouPVM).Danseas,ladéisiond'ordonnanement reste
entièrement à lahargeduprogrammeur :ildoitexpliitement spéier l'ordonnan-
ement de son appliation, 'est-à-dire où et quand exéuter les diérents aluls.
Mêmesi e type d'approhe reste tout à faitenvisageable pour desappliations ré-
gulières ou des appliations basées sur un parallélisme de données, il apparaît très
souhaitable que la tâhe omplexe de l'ordonnanement inombe à un ompilateur
ouàun environnement d'exéution.Dansetteoptique,plusieurs langagesetbiblio-
thèquesdehautniveauxontétédéveloppés[Fu97 ,CDGR98℄.L'appliationparallèle
est alors dérite indépendamment de l'arhiteture sous-jaente et une représenta-
tionnede l'appliation peutêtreonstruite.Cetteonstrution est habituellement
appelée extrationduparallélisme, ellepeutavoir lieuavant l'exéutionouau ours
de elle-i. La représentation ne obtenue dérit les diérents aluls eetués par
l'appliation qui sont aussi appelés tâhes et elle ore une vision des dépendanes
entre es aluls. Elle est habituellement dérite à l'aide d'un graphe de préédene
oud'un graphe deot dedonnées.Unordonnaneur ntirantpartideetteonnais-
sanepeutalorsêtreutilisé,soitdynamiquementàl'exéution,soitstatiquementàla
ompilation. Cet ordonnaneur doit réaliserlelien néessaire ave lamahine ible.
Il doit déider où etquand exéuter les diérentes tâhes de l'appliation, tout en
tenant ompte desressouresetdesspéiitésde lamahine ible.
L'unedesaratéristiquesdesarhiteturesatuellesommelesgrappesdePCest
letemps important desommuniations, et notamment letemps deslatenes. Lors
de l'exéution d'une appliation parallèle, les unités de aluls ont souvent besoin
de ommuniquer entreelles pour partager desdonnées oudes résultats. Laprise en
ompte de esommuniations dansla déision d'ordonnanement apparaît omme
unfateur lépour permettre desexéutionseaes sure type d'arhiteture.
Pourprendreenompteesommuniations,diérentsmodèlesontétéproposés.
Unpointessentielpour laréalisationd'algorithmesd'ordonnanement utilisablesen
pratique est la validité de es modèles. En eet, le modèle doit être susamment
réaliste pour que l'ordonnanement obtenu puisse être eaement exéuté sur la
mahine ible. Lessuroûts imprévuspar le modèle doivent don êtrelimités. Pour
prendreen ompte les ommuniations, deuxgrandes approhessont envisageables.
La première onsiste à modéliser les oûts direts qu'induisent les ommuniations.
Leplusonnu,maisaussileplussimple,deesmodèlesestlemodèle délai,ilpermet
de prendre en ompte une latene de ommuniation lorsque deux tâhes désirant
éhangerunrésultatsontplaéessurdesproesseursdiérents.Laseondeapprohe,
plus réente est fondéesur une prise en ompte impliite des ommuniations. Elle
s'appuiesurunmodèled'appliationoùlestâhesquilaomposentsontelles-mêmes
des ativités parallèles pouvant s'exéuter sur un nombre variable de proesseurs
ave une eaité variable dépendant notamment des oûts de ommuniations et
du parallélisme intrinsèque de la tâhe. Il s'agit du modèle des tâhes malléables.
Ce modèle se base sur une vision struturée et à deux niveaux d'une appliation
parallèle.
Dansleadredeettethèse,jemesuisintéresséauxproblèmesd'ordonnanement
sousesdiérents modèles.L'objetif estde plaer etd'ordonner judiieusement les
diérentes tâhes an de minimiser le temps d'exéution de l'appliation. Il s'agit
d'éviterde tropnombreuses ommuniations etdetrouver unbon ompromis entre
l'utilisationdesressouresdealulsetlesommuniations.Leproblèmedel'ordon-
nanementdansleontextedualulparallèleestainsiunproblème d'optimisation.
Saufdansdesasbienpartiuliers,lesproblèmesd'ordonnanementsouslesmodèles
prenantenomptelesommuniations(queesoitlesmodèlesdélaioulemodèledes
tâhesmalléables) sontNP-diiles.Il apparaît don très peu probable depouvoir
trouver un algorithme polynmial pour résoudre optimalement eux-i. Une solu-
tion naturelle onsiste à setourner vers desheuristiques qui alulent une bonne
solution réalisablemaisnon néessairement optimale.
L'évaluationdelaqualitéd'uneheuristiqueapparaîtalorsommeunpointimpor-
tant.Unepremièreapproheonsisteàutiliserdesjeuxd'essais.Diérentesinstanes
sont générées,etl'heuristique peutalors être omparéeàd'autres surlabasedees
instanes.Cependant laréponseapportéen'est alorsquepartiellement satisfaisante,
lavalidité desjeux d'essaisrestant souvent très subjetive. La notion d'algorithmes
d'approximation apporte une réponse intéressante au problème de la qualité d'une
heuristique. Un algorithme est une k-approximation (d'un problème de minimisa-
tion) sipourtoute instanedu problèmelasolution réalisableobtenue n'exède pas
la solution optimale d'un rapport au plus k. On parle aussi de la garantie de per-
formane de l'algorithme. Dans le adre de ette thèse, j'ai essayé de privilégier la
reherhe d'algorithmes d'approximation.
Le plan dee doument est lesuivant.Dansle premier hapitre, nousdérivons
endétaillesnotions,lesonepts etlesmodèlesquenousutiliserons.Nousdérivons
omment représenter nement une appliation parallèle et notamment la notion de
graphede préédene. Il s'agit d'unereprésentation ne d'uneappliation que nous
utiliserons tout au long de ette thèse.Puis, nousdérivonsles mahines parallèles
surlesquellesnousenvisageonsd'exéuterdesappliationsparallèles. Nousétudions
endétaillesmodèlesàommuniations expliitesetlemodèledestâhesmalléables,
qui permettent une prise en ompte des ommuniations dans la déision d'ordon-
nanement.Nousnousintéressonsnotamment à lavalidité pratiquede esmodèles.
Dans leseondhapitre, nousprésentonsunétat de l'artdesdiérents résultats
obtenus pour les problèmes d'ordonnanement prenant en ompte les ommunia-
tions.Nousnousintéressonsàlaomplexitédeesproblèmes,auxalgorithmesd'ap-
proximationpour esproblèmes etauxheuristiquesutiliséesdanslapratique.Nous
présentons notamment les résultats obtenus pour les problèmes d'ordonnanement
sous les modèles de type délai ar eux-i ont été largement étudiés. Puis nouster-
minons par les résultats onnus pour l'ordonnanement sous le modèle des tâhes
malléables etsousdesmodèles prohes.
Les trois hapitres suivants présentent mes ontributions au domaine. Le troi-
sième hapitre dérit nos travaux autour de l'ordonnanement sous le modèle des
tâhes malléables. Nous nous sommes intéressés au problème de l'ordonnanement
ave des ontraintes de préédenes sous le modèle des tâhes malléables etsur un
un premiertemps, nous alulons une alloation, 'està dire un nombrede proes-
seurs pour aluler haune des tâhes malléables. Dans un deuxième temps, nous
utilisonsunalgorithmed'ordonnanement de tâhesmultiproesseurs (tâhesparal-
lèles devant s'exéuter sur un nombre xé de proesseurs) pour aluler dans quel
ordreexéuter lesdiérentes tâhes. Lapremière phaseest baséesurune relaxation
du problèmeinitial. La ontrainte surle fait qu'au plus m proesseurs travaillent à
un instant donné est relâhée, et une nouvelle ontrainte plus faible est introduite;
elle exprime le fait que le travail total ne doit pas être trop important. Cette ap-
prohenousapermisd'obtenirdesalgorithmesd'approximationorantunegarantie
onstantepoureproblèmeetpourdesgraphesdepréédenedetypearbresmais
également pour des graphes de préédene quelonques. Ces résultats sont le fruit
d'un travail mené en ollaboration ave Gregory Mounié, Denis Trystram, Borut
RobietGerhardWoeginger.
Dans les deux derniers hapitres, nous nous sommes intéressés aux problèmes
d'ordonnanement sous des modèles à ommuniations expliites. Le modèle que
nous avons onsidéré est un modèle délai similaire à elui introduit par Papadimi-
triou et Yannakakis [PY90 ℄. Toutes les tâhes ont une même durée unitaire et les
ommuniations sont modélisées par un délai uniforme potentiellement grand. Si
deux tâhes x et y liées par une relation de préédene sont ordonnanées sur des
proesseursdiérents,alorslatâheynepourraommeneràs'exéuterqueunités
detemps aprèslandelatâhe x.Par ontre silestâhesxety sontplaéessurle
même proesseur alors la tâhe y pourra s'exéuter immédiatement après latermi-
naison de latâhe x. L'ordonnanement souse modèleest aussiappelé problème
d'ordonnanement ave grand temps de ommuniation.
Le quatrième hapitre est une approhe originale de e problème, elle est ba-
séesurune déomposition réursive du graphedepréédene. Nousrééhissionsau
départ sur le problème de la onstrution du graphe de préédene dérivant une
appliation sous lemodèle des tâhesmalléables. Notre déomposition réursive du
graphede préédeneestfondéesurune déoupe onsistant à trouverdeuxgroupes
detâhesindépendants('est-à-diretelsquehaunedestâhesdel'unn'aitauune
relation de préédene ave haune des tâhes de l'autre) et tel que es groupes
de tâhessoient les plus grands possibles. Ces deux groupesde tâhes peuvent être
exéutés de manière eae en parallèle. Cetteidée permetainsi de onstruire une
déompositiondugraphedepréédene.Nousn'avonspasréussiàtrouverdegaran-
tie de performanes pour ette approhe. Cependant nous avons expérimentéette
nouvelle heuristique sur quelques graphes d'appliations réelles, en la omparant
ave un algorithme lassique pour le problème du regroupement DSC (Dominent
Sequene Clustering) [GY92℄.Les premiers résultatssont partiulièrement enoura-
geants. Auvudeeux-i,noussouhaitonsmaintenantvalidernotreapprohesurdes
appliations réelles. En ollaboration ave Rémi Revire, un travail dans ette voie
esten oursatuellement.Ils'agitd'intégrer notreapprohe etd'autresheuristiques
d'ordonnanement statiques dansAthapasan1,l'environnement de programmation