THÈSEDEDOCTORATDE L’UNIVERSITÉPIERREETMARIECURIE Spécialité Informatique ÉcoledoctoraleInformatique,TélécommunicationsetÉlectronique(Paris) Présentéepar M. Andi DREBES Pourobtenirlegradede DOCTEURDEL’UNIVERSITÉPIERREETMARIECURIE Sujetdelathèse: Dynamic optimization of data-flow task-parallel applications for large-scale NUMA systems soutenuele25juin2015devantlejurycomposéde: M.AlbertCOHEN Examinateur INRIA/ÉcoleNormaleSupérieure M.BenoîtDUPONTDEDINECHIN Examinateur KalrayS.A. Mme. NathalieDRACH-TÉMAM Directeurdethèse UniversitéPierreetMarieCurie Mme. KarineHEYDEMANN Encadrantdethèse UniversitéPierreetMarieCurie M.Jean-FrançoisMÉHAUT Rapporteur UniversitéJosephFourier/CEA M.RaymondNAMYST Examinateur UniversitédeBordeaux M.NachoNAVARRO Rapporteur UniversitatPolitècnicadeCatalunya/ BarcelonaSupercomputingCenter M.AntoniuPOP Invité TheUniversityofManchester M.PierreSENS Examinateur INRIA/UniversitéPierreetMarieCurie M.MarcSHAPIRO Invité INRIA/UniversitéPierreetMarieCurie InlovingmemoryofHansandSolange. Remerciements Jevoudraistoutd’abordremerciermesencadrantsdethèse,NathalieDrach-Témam(professeur, UniversitéPierreetMarieCurie)etKarineHeydemann(maîtredeconférences,UniversitéPierre etMarieCurie),pourleurvolontédetravailleravecmoietd’encadrercettethèse.Jesuistrèsrecon- naissantpourlaqualitéexceptionnelledel’encadrementquis’estmanifestéedanslesnombreuses discussionsscientifiquesrichesetconstructives,lesretoursremarquablementdétailléessurmes productionsscientifiquesetmesprésentationsainsiqu’uneambiancedetravailchaleureuse.Jeles remercied’avoirpartagémonenthousiasmeauxmomentsfortsetpourlesoutienetl’encourage- mentauxmomentscritiquesdecettethèse. JetienségalementàremercierchaleureusementAlbertCohen(directeurderecherche,INRIA/ ÉcoleNormaleSupérieure)d’avoirproposédecollaboreraprèsunandethèseetdem’avoirfait réorientermestravauxderecherchedanslecontexteOpenStream.Lescollaborationsscientifiques suivantcettepropositionontétéintensesettrèsenrichissantes.Jeleremercieaussipoursonsoutien scientifiqueettechniqueprécieuxainsiquelamiseenrelationavecdesnombreusespersonnes impliquées dans la recherche sur des sujets connexes. Son suivi continu de mes travaux et ses conseilsonteuuneinfluencemajeuresurlaqualitédemontravail. JeremercietoutparticulièrementAntoniuPop(lecturer,UniversityofManchester)d’avoircollaboré avecmoisurOpenStreametdem’avoirlaissébasermarecherchesursestravaux.Sesexplications, ses conseils et son aide ont été d’une valeur inestimable pour l’intégration dans le run-time OpenStream et pour la publication des résultats. Je voudrais également le remercier pour son accueilchaleureuxàManchester. Jesuistrèsreconnaissantenverslesmembresdemonjurydethèse,BenoîtDupontdeDinechin (CTO, Kalray S.A.), Jean-François Méhaut (professeur, Université Jospeh Fourier), Raymond Namyst(professeur,UniversitédeBordeaux),NachoNavarro(associateprofessor,Universitat PolitecnicadeCatalunya),PierreSens(professeur,UniversitéPierreetMarieCurie)etMarcShapiro (directeurderecherche,INRIA/LIP6)d’avoiracceptédeparticiperàmonjurydethèseetpour l’intérêtqu’ilsontportéàmestravaux. JesouhaiteexprimertoutemagratitudeàJean-FrançoisMéhautetsescollaborateursdem’avoir donné accès à une machine NUMA grande échelle, ce qui m’a permis d’évaluer la scalabilité dessolutionsproposéesdanscettethèse.Aumêmetitre,jeremercieAlainGreiner(professeur, l’UniversitéPierreetMarieCurie)dem’avoirdonnéaccèsàunemachineNUMAacquisepourses projetsderecherche.LesinterventionsrapidesetefficacesdeJean-PaulChaputetManuelBouyer (ingénieurs,UniversitéPierreetMarieCurie)surcettemachineontétéd’unegrandeaidepourle bondéroulementdesexpérimentations. Merci aussi à Quentin Bunel (stagiaire en master, Université Pierre et Marie Curie) et Adrien Guatto(doctorant,ÉcoleNormaleSupérieure)pourleurscontributionsàAftermath.Cetoutila égalementprofitédenombreusessuggestionsetdusupportparAlbertCohenetAntoniuPop. Jesouhaiteremercierl’équipeALSOCduLIP6pourcesannéesdethèseagréablesetenrichissantes. Merci à Lucien Goubet et Youen Lesparre pour l’ambiance agréable au bureau. J’ai également appréciélesnombreusesdiscussionsavecOlivierMarchettisurl’informatiqueetlascienceen général. Tout le travail de cette thèse n’aurait jamais pu être possible sans la richesse, la diversité et l’incroyableeffortdelacommunautédulogiciellibre.Lenombredelogicielsetdebibliothèques libresutilisésétanttropgrandpourlesnommerdemanièreexhaustivejemelimiteàremercier cettecommunautéenentier.Leslogicielslibresonttoujoursétéuneénormesourcedemotivation et d’enthousiasme pour moi et la liberté de les utiliser, les comprendre, les modifier et de les redistribuerestd’unevaleurinestimable. Enfin,jesouhaiteremerciermafamillepoursonsoutienetsonamourconstantetinconditionnel. JepensetoutparticulièrementàmacompagneAmandinequim’aencouragéetsoutenudurant toutescesannéesetquiaacceptédescontraintesfortespourlaréussitedecettethèse.Jen’oublierai jamais non plus le confort et la gentillesse que sa famille m’a apporté, notamment pendant la finalisationdecettethèse. vi Copyright(cid:13)c AndiDrebes2015. Verbatimcopyinganddistributionispermittedinanymedium,providedthisnoticeispreserved. Lacopieetladistributiondecopiesexactesdecedocumentsontautorisées,maisaucunemodificationn’est permise. Thispageintentionallyleftblank. Abstract Withinthelastdecade,microprocessordevelopmentreachedapointatwhichhigherclockrates andmorecomplexmicro-architecturesbecamelessenergy-efficient,suchthatpowerconsumption and energy density were pushed beyond reasonable limits. As a consequence, the industry has shifted to more energy efficient multi-core designs, integrating multiple processing units (cores) on a single chip. The number of cores is expected to grow exponentially and future systemsareexpectedtointegratethousandsofprocessingunits. Inordertoprovidesufficient memorybandwidthinthesesystems,mainmemoryisphysicallydistributedovermultiplememory controllerswithnon-uniformaccesstomemory(NUMA). Pastresearchhasidentifiedprogrammingmodelsbasedonfine-grained,dependenttasksas akeytechniquetounleashtheparallelprocessingpowerofmassivelyparallelgeneral-purpose computingarchitectures. However,theexecutionoftask-paralelprogramsonarchitectureswith non-uniform memory access and the dynamic optimizations to mitigate NUMA effects have receivedonlylittleinterest. Inthisthesis,weexplorethemainfactorsonperformanceanddata localityoftask-parallelprogramsandproposeasetoftransparent,portableandfullyautomatic on-linemappingmechanismsfortaskstocoresanddatatomemorycontrollersinordertoimprove datalocalityandperformance. Placementdecisionsarebasedoninformationaboutpoint-to-point datadependences,readilyavailableintherun-timesystemsofmoderntask-parallelprogramming frameworks. Theexperimentalevaluationofthesetechniquesisconductedonourimplementation intherun-timeoftheOpenStreamlanguageandasetofhigh-performancescientificbenchmarks. Finally,wedesignedandimplementedAftermath,atoolforperformanceanalysisanddebugging oftask-parallelapplicationsandrun-times.
Description: