Mes thĂ©matiques dâactivitĂ©s scientifiques
– Simulation numĂ©rique appliquĂ©e Ă la rĂ©solution de problĂšmes complexes de trĂšs grandes tailles ;
– Applications et problĂšmes pluridisciplinaires permettant dâintĂ©grer mes travaux dans de nombreux domaines pluridisciplinaires et thĂšmes scientifiques, pour lesquels des compĂ©tences, en calcul intensif, parallĂšle ou en architectures distribuĂ©es seraient nĂ©cessaires ;
– ProblĂšmes relevant des mathĂ©matiques, de la physique, de la bio-informatique, de la mĂ©canique, du gĂ©nie des procĂ©dĂ©s, de lâĂ©conomie et de lâalgorithmique du texte ;
– Contributions concernant lâimplĂ©mentation de mĂ©thodes calculs parallĂšles synchrones et asynchrones, en particulier sur les tests dâarrĂȘt des itĂ©rations dans un cadre de calculs asynchrones ;
– Analyse du comportement des expĂ©rimentations en liaison avec lâarchitecture des machines utilisĂ©es et la rapiditĂ© du rĂ©seau dâinter- connexions.
IntĂ©rĂȘt de ces mĂ©thodes
Lâutilisation de ces mĂ©thodes est intĂ©ressante pour la simulation numĂ©rique dâapplications industrielles et les applications traitĂ©es ont concernĂ© des problĂšmes aux dĂ©rivĂ©es partielles fortement non-linĂ©aire par la mĂ©thode de de multi-domaines, des problĂšmes couplĂ©s en biologie concernant la sĂ©paration de protĂ©ines par Ă©lectrophorĂšse, des problĂšmes formulĂ©s sous forme complĂ©mentaire a intervenant par exemple en traitement dâimages ou Ă des problĂšmes avec contraintes, des problĂšmes dâinteraction fluide-structure, un problĂšme de mĂ©canique de fluide, un problĂšme de solidification de lâacier modĂ©lisĂ© par une Ă©quation de la chaleur prenant en compte des phĂ©nomĂšnes de rayonnement Ă la frontiĂšre, un problĂšme intervenant en mathĂ©matiques financiĂšres, un problĂšme de dĂ©tection de rĂ©pĂ©tition intervenant dans lâalgorithmique du texte, en biologie molĂ©culaire (sĂ©quences ADN) et en compression de donnĂ©es.
A partir des modĂ©lisations effectuĂ©es par les experts du domaine, jâai contribuĂ© Ă lâimplĂ©mentation dâalgorithmes parallĂšles ou distribuĂ©s, asynchrones ou synchrones permettant la rĂ©solution des problĂšmes citĂ©es prĂ©cĂ©demment et rĂ©aliser ainsi des simulations en faisant appel au calcul haute-performance sur des architectures dĂ©diĂ©es (HPC, grille, cluster, simulateur peer to peer, cloud, GPU).
Il est important de remarquer que le dĂ©coupage en tĂąches parallĂšles, i.e. la granularitĂ© des tĂąches et le nombre de processeurs utilisĂ©s influent sur les performances des algorithmes. De plus, le surcoĂ»t de calcul engendrĂ© par des relaxations supplĂ©mentaires est infĂ©rieur Ă celui des synchronisations combinĂ©es Ă lâinactivitĂ© des processeurs dans les schĂ©mas synchrones parallĂšles et amĂ©liore la qualitĂ© de la solution numĂ©rique.
Exemples de découpage
Résultats obtenus
Les analyses des expĂ©rimentations ont permis de montrer un gain de temps dâexĂ©cution non nĂ©gligeable pour les mĂ©thodes asynchrones par rapport Ă celles synchrones dans le cas de machines Ă©loignĂ©es gĂ©ographiquement.
Au niveau analyse, concernant les problĂšmes en parallĂšle asynchrone :
âą sur cluster :
â Performances gĂ©nĂ©ralement faibles des mĂ©thodes asynchrones
â Permet de rĂ©duire, dans le cas dâun rĂ©seau extrĂȘmement rapide, le temps dâexĂ©cution par rapport au temps sĂ©quentiel.
âą sur grille :
â Meilleures performances des mĂ©thodes asynchrones quâen mode synchrone, essentiellement en raison de la latence Ă©levĂ©e du rĂ©seau.
â Lâasynchronisme est particuliĂšrement avantageux lorsque les machines ont des capacitĂ©s de calcul diffĂ©rentes ou sont situĂ©es dans des rĂ©gions gĂ©ographiques Ă©loignĂ©es.
âą sur cloud :
â Grand intĂ©rĂȘt avec rĂ©seaux lents :
⹠Le cloud présente des communications réseau indirectes et des latences importantes dues à la virtualisation.
âą Il a aussi un rĂ©el intĂ©rĂȘt particuliĂšrement lorsque les communications entre les machines sont lentes et non directes.
âą Le mode parallĂšle asynchrone limite lâimpact de ces communications lentes, en maximisant lâutilisation des ressources locales (cĆurs CPU ou GPU).
Les expĂ©rimentations sur Cloud montrent quâen raison de la prĂ©sence de couches logicielles intermĂ©diaires utilisĂ©es dans ce type dâarchitectures et du grand nombre de synchronisations en mode synchrone, la version asynchrone permet un gain de temps significatif, rĂ©duisant le temps d’exĂ©cution dâun facteur 30 Ă 100.
De plus, en rĂ©duisant les communications entre les processus parallĂšles, les temps de restitution en mode asynchrone diminuent nettement : des communications avec deux (respectivement six) processus permettent un gain de temps de lâordre de 100 (respectivement 30).