La lecture en ligne est gratuite
Le téléchargement nécessite un accès à la bibliothèque YouScribe
Tout savoir sur nos offres
Télécharger Lire

R' epartition adaptative d'' ev` enements en contexte ...

56 pages
Universit´e Joseph Fourier — Master 2 Recherche - Syst`emes et Applications R´eparties
R´epartition adaptative d’´ev`enements en contexte
multiprocesseur
Projet r´ealis´e par :
`Sylvain GENEVES
Soutenu le :
23 juin 2008
´Equipe Sardes
Inria Rhˆone-Alpes - Laboratoire d’Informatique de Grenoble
Encadrants :
Renaud Lachaize
´Vivien Quema
JURY :
Marie-ChristineFauvet , Membre du jury permanent
Jean-Marc Vincent , Membre du jury pt
Marlon Dumas , Membre du jury permanent
Sara Bouchenak , Responsable de parcours
´Jean-Fran¸coisMehaut , Examinateur externe
Renaud Lachaize , Encadrant
´Vivien Quema ,t Remerciements
Je tiens `a remercier l’´equipe Sardes pour leur accueil chaleureux ainsi que le financement
de ces travaux. Je tiens `a apporter toute ma gratitude `a Renaud, Vivien et Fabien (Gaud et
Mottet) pour leur encadrement, leur disponibilit´e ainsi que leur aide pr´ecieuse. Je remercie
´egalement ma famille et mes amis pour leur patience et leur participation `a la relecture de ce
rapport. Table des mati`eres
´1 Etat de l’art 7
1.1 Mod`eles de programmation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.1.1 Mod`ele de par threads . . . . . . . . . . . . . . . . . . . 7
1.1.2 Mod`ele de programmation par ´ev´enements . . . . . . . . . . . . . . . . 8
1.2 Architecture mat´erielle et impact des caches . . . . . . . . . . . . . . . . . . . . 10
1.2.1 Architectures modernes . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.2.2 Optimisations li´ees aux ...
Voir plus Voir moins
Universit´eJosephFourierMaster2Recherche-Syst`emesetApplicationsRe´parties
R´epartitionadaptatived´ev`enementsencontexte multiprocesseur
Projetr´ealis´epar: ` SylvainGENEVES
Soutenu le : 23 juin 2008
´ EquipeSardes Inrias-eLaAlpeone-RhˆrofnIderiotarobblnoreeGedqutima
Encadrants : RenaudLachaize VivienQu´ema
JURY :
Marie-ChristineFauvet, Membre du jury permanent Jean-MarcVincent, Membre du jury permanent MarlonDumas, Membre du jury permanent SaraBouchenak, Responsable de parcours Jean-Franc¸ois´Mtaueh, Examinateur externe RenaudLachaize, Encadrant VivienQu´ema, Encadrant
Remerciements
Jetiensa`remercierle´quipeSardespourleuraccueilchaleureuxainsiquelenancement decestravaux.Jetiens`aapportertoutemagratitude`aRenaud,VivienetFabien(Gaudet Mottet)pourleurencadrement,leurdisponibilite´ainsiqueleuraidepr´ecieuse.Jeremercie e´galementmafamilleetmesamispourleurpatienceetleurparticipationa`larelecturedece rapport.
Table
1
2
3
4
des
matieres `
´ Etat de l’art 7 1.1Mod`elesdeprogrammation.............................7 1.1.1Mod`eledeprogrammationparthreads...................7 1.1.2Modeledeprogrammationpar´ev´enements................8 ` 1.2Architecturemate´rielleetimpactdescaches....................10 1.2.1 Architectures modernes . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 1.2.2Optimisationsli´eesauxcaches.......................13 1.3Supportsdex´ecutionadapte´sauxarchitecturesmultiprocesseur.........15 1.3.1 SMP Click . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 1.3.2 libasync-mp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 1.4Synthe`se........................................19
Contribution 21 2.1Versdessupportsdex´ecutionplusexibles....................21 2.2Architecturepropose´e................................22 2.2.1Strat´egiesdeplacements...........................23 2.2.2De´taildelarchitecture............................24 2.2.3Me´canismesdobservation..........................26 2.2.4Prisedede´cision...............................27 2.3 Synthese . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 `
Mise en œuvre 3.1 Placements statiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.1.1 Gestion de la synchronisation . . . . . . . . . . . . . . . . . . . . . . . . 3.2Observationdescompteursmate´riels........................ 3.2.1Pre´sentationdePAPI............................ 3.3 Adaptation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.4Synth`ese........................................
R´esultatsexp´erimentaux 4.1Conditionsdexp´erimentation............................ 4.2 Tests de placements statiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.3 Tests avec adaptation dynamique . . . . . . . . . . . . . . . . . . . . . . . . . . 4.4Coˆutdelobservation................................. 4.5Synth`ese........................................
1
31 31 31 32 32 33 33
35 35 36 39 42 43
5
Conclusion 5.1 Bilan . . . . 5.2 Perspectives
. . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .
2
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
45 45 45
Table des
1.1 1.2 1.3 1.4
1.5 1.6
2.1 2.2 2.3 2.4
3.1
gures
Exemple d’architecture multiprocesseur . . . . . . . . . . . . . . . . . . . . . . Exemple d’architecture multicœur . . . . . . . . . . . . . . . . . . . . . . . . . Exemple d’architecture multicœur et multiprocesseur . . . . . . . . . . . . . . . Etatduprogrammependantsonexe´cution.Cettegureesttir´eedelarticle de Bhatiaet al. . . . . . . . . . . . . . . . [5] .. . . . . . . . . . . . . . . . . . un exemple de connexion avec Click . . . . . . . . . . . . . . . . . . . . . . . . Architecture de libasync-mp . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Vue d’ensemble de notre contribution . . . . . . . . . . . . . . . . . . . . . . . . Le placement round robin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Architecturepropos´ee................................ Redistributiondetraitantd´ev´enement.......................
Exempledhyst´er´esis.Lesseuilssontdi!elquon´erentsssnadsnellenoeles ch d’´tat. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ange e
4.1Re´sultatsdubenchmarkCPU-intensif........................ 4.2Re´sultatsdubenchmarkltresdimages....................... 4.3 Taux de fautes de cache L2 du benchmark filtres d’images. . . . . . . . . . . . . 4.4 Taux de fautes de cache L2 du benchmark CPU-intensif. . . . . . . . . . . . . . 4.5Re´sultatsdubenchmarkCPU-intensifavecadaptationdynamique........ 4.6Synthe`sedesre´sultatsdubenchmarkCPU-intensif................. 4.7R´esultatsdubenchmarkltresdimagesavecadaptationdynamique....... 4.8Synthe`sedesre´sultatsdubenchmarkltresdimages................ 4.9Re´sultatsdubenchmarkCPU-intensifavecobservationdescompteursdeper-formances. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.10Re´sultatsdubenchmarkltresdimagesavecobservationdescompteursde performances. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3
12 13 13
15 16 18
21 23 25 29
33
36 37 38 38 39 40 40 41
42
43
4
Introduction
Probl´ematique
Ceprojetsestd´eroul´edansle´quipeSardesquifaitpartiedelINRIA1et du LIG2. Le projetSardessint´eresse`alade´nitiondetechnologieslogiciellespourlaconstructionde syst`emesadaptables. Cesdernie`resanne´es,nousavonsassist´ea`lage´ne´ralisationdecertainestechnologiesmate´-rielles, notamment les architectures multiprocesseur, mais surtout les processeurs multicœur .Cestechnologiese´taientjusqu`amaintenantr´eserv´ees`adesutilisationssp´eciques,comme lecalcula`hauteperformance(HPC3-apscetierutexar)parchllesdeteent,remenr`i.eeDmelp rall`elessontsortiesdececadreetontnotammentrejointceluidesserveursdedonne´eset des ordinateurs personnels. Nous nous concentrerons principalement sur le cas de machines d´edi´ees`auneapplication,etbienquenostravauxsoientg´ene´ralisables`adi!erents domaines ´ applicatifs,notre´etudeestcentr´eesurlecontextedesserveursdedonne´es.Nousverronsdans quellemesurelescachesmat´erielsdecesarchitecturesjouentunrˆolenonn´egligeablesurles performances des applications. Lesdeuxprincipalestechniquesdeprogrammationconcurrenteserontd´etaille´esdansla suitedecerapport,`asavoircellea`basedeprocessusl´egers(thrds),etcellea`based´´ ea eve-nements.Cettee´tudemontreraquelaprogrammatione´ve´nementielleexposedint´eressantes proprie´t´esdemodularite´etdoncderecongurabilite´. Ne´anmoins,cettetechniquenutilisantquunseulotdex´ecution,elletirea prioridi"-cilementpartidesarchitecturesparalle`les.Ilexistepeudesolutionse´ve´nementiellespourde tellesarchitectures,etilsetrouvequecelles-cinepre´sententaucuneoptimisationauniveau descachesmat´eriels.
Contribution
Notrecontributiondanscecontexteconcerneunsupportdex´ecutionexibleo!rant un placementdestraitantsd´ev´enementse"cace sur les di!nisuest´er´teennoitraP.xeduce´place-ment e"ouce´noitse´txedtidecsuancieirantparniualaptctanmtesnneodnteesetdrnt!ertes par l’architecture, mais aussi des caches de celle-ci. Notretravailsede´coupeentrois´etapes.Toutdabordmontrerlesdi!-´enersdceomec portementobserv´eesselonletypedapplicationautraversdecertainsplacementsstatiques detraitants.Ensuitemettreenplaceunesolutiondobservationdesm´etriquespertinentes`a 1Institut National de Recherche en Informatique et en Automatique 2Laboratoire d’Informatique de Grenoble 3High Performance Computing
5
Un pour Un
Permettre à tous d'accéder à la lecture
Pour chaque accès à la bibliothèque, YouScribe donne un accès à une personne dans le besoin