Méthodes In-Situ et In-Transit : vers un continuum entre les applications interactives et offline à grande échelle

Les simulations informatiques sont devenues des outils couramment utilisés dans divers domaines scientifiques : dynamique des fluides, climatologie, biologie ou encore astrophysique. Une simulation vise à reproduire des phénomènes complexes à l’aide de modèles abstraits. À partir de l’état initial d’un système numérique, une simulation résout des séries d’équations définies par un modèle pour faire évoluer l’état du système. Si les modèles utilisés sont suffisamment précis, le système devrait évoluer de la même façon qu’un système réel. Les motivations pour utiliser de telles simulations sont multiples. Une des premières motivations est la difficulté voire l’impossibilité de contrôler ou reproduire le phénomène réel. Ceci est notamment le cas en climatologie où l’on ne peut qu’observer les différents phénomènes. Une autre raison est économique : faire une expérimentation réelle peut s’avérer coûteux. Enfin, les simulations peuvent également servir à des fins exploratoires en permettant de simuler diverses configurations du modèle initial ou de paramètres.

Au fur et à mesure des années, les systèmes numériques utilisés par les scientifiques sont devenus de plus en plus imposants. Ceci s’explique par plusieurs facteurs : les modèles numériques deviennent de plus en plus réalistes, de plus en plus de données expérimentales sont produites ou encore simplement les besoins évoluent. Pour pouvoir simuler ces systèmes complexes de grandes tailles, une importante puissance de calcul est nécessaire. Ces simulations sont donc généralement lancées dans des grands centres de calcul sur de larges machines parallèles.

Le Top500 répertorie deux fois par an les 500 supercalculateurs les plus puissants au monde. Ce classement est établi sur la base du benchmark LINPACK[31] testant principalement les capacités de calcul flottant de ces machines. En juin 2014, 37 supercalculateurs peuvent atteindre la barre symbolique du petaflops  . La machine actuellement la plus puissante au monde, le Tianhe-2 (MilkyWay-2), culmine à une vitesse de 33.8 petaflops répartie sur 3 120 000 cœurs. On estime l’arrivée des premières machines exascales  à l’horizon 2020.

Malgré la puissance offerte par de telles machines, les temps d’exécution des simulations de production peuvent durer plusieurs jours voire plusieurs semaines. Pendant cette période, des données sont sauvegardées de manière périodique par les simulations. Ces données représentent un état partiel du système simulé. Une fois la simulation terminée, ces données permettent aux chercheurs de pouvoir “relire” le déroulement de la simulation et de l’analyser. Pour des raisons de commodité, la phase d’analyse se déroule bien souvent dans le laboratoire des chercheurs. Ceci permet aux chercheurs de disposer de leurs données et d’échanger avec des collègues sans avoir à se soucier des contraintes d’accès inhérentes aux centres de calcul. Ceci nécessite toutefois de transférer les données du centre de calcul vers le laboratoire du scientifique.

L’analyse va d’une lecture directe des données de la simulation à des traitements avancés allant de la production de graphes 2D jusqu’à la production de visualisations 3D interactives. La visualisation scientifique est par exemple couramment utilisée dans de nombreux domaines scientifiques. Des outils comme Visit[8] et Paraview[10] ont été développés pour permettre la visualisation de nombreux types de données comme des maillages ou des grilles (Figure 1.1(a)). Ces outils sont particulièrement utilisés pour analyser des données issues de simulations de dynamique des fluides, de climatologie ou d’études de structures. D’autres outils peuvent être plus proches de certains domaines scientifiques comme VMD[42] qui se spécialise dans la visualisation de systèmes moléculaires. Des algorithmes de rendu spécifiques à ce domaine (Figure-1.1(b)) sont nécessaires pour permettre une visualisation à la fois performante et plus compréhensible pour l’utilisateur. En plus de la visualisation, ces outils permettent souvent d’effectuer des requêtes complexes associant à la fois la génération de graphes et d’autres analyses comme des statistiques.

De manière générale, les travaux autour des simulations se déroulent en trois phases :
— Préparation. L’utilisateur prépare un modèle à simuler avec une série de paramètres. Des fichiers de configuration sont alors générés en vue de la simulation.
— Simulation. La simulation est lancée sur une machine parallèle pendant plusieurs heures, jours voire semaines et produit des données sauvegardées sur disque. Lorsque suffisamment de ressources sont disponibles sur la machine parallèle, l’ordonnanceur de taches de la machine lance la simulation de l’utilisateur. Dans cette phase, l’utilisateur n’a pas de moyens d’interaction avec la simulation.
— Post-traitement. L’utilisateur analyse les données générées par la simulation. Cette phase peut se faire soit sur la même machine parallèle hébergeant la simulation, soit sur un petit cluster local ou une station de travail dans le laboratoire de l’utilisateur si le transport des données est possible et s’il dispose des moyens de calcul nécessaires.

Ce cycle est un procédé bien souvent itératif. Suite à la phase d’analyse, de nouvelles hypothèses peuvent être formulées, des paramètres modifiés et de nouvelles simulations peuvent être nécessaires.

C’est par exemple le cas dans le domaine de la dynamique moléculaire. Les simulations de dynamique moléculaire modélisent le comportement de grands ensembles d’atomes. Mais avant de pouvoir modéliser ces grands ensembles, il faut déterminer leurs structures atomistiques. Il s’agit d’un travail long et complexe associant à la fois des manipulations expérimentales (cristallographie par rayon X) et simulations. La résolution de ces structures représente un travail de recherche à part entière. Il s’agit cependant d’une première étape indispensable pour l’étude de mécanismes biologiques. Les travaux d’Alex Tek autour du complexe SNARE ont par exemple permis d’étudier le mécanisme de fusion entre des membranes comme par exemple la fusion synaptique[78]. Cette étude a nécessité une thèse afin de construire les modèles atomistiques nécessaires et de les valider par simulation.

Les structures atomistiques sont également très utilisées pour étudier le comportement de virus et aider à la conception de traitements. Récemment, la structure atomistique complète du capside a été déterminée[92]. Le capside du virus VIH protège l’ADN du virus jusqu’à la phase de parasitage des cellules saines de l’hôte. Ce capside joue un rôle central dans la transmission du virus et pourrait être une des clés permettant l’élaboration d’un anti-viral contre le VIH. Le modèle complet du capside représente 64 millions d’atomes ce qui constitue l’un des plus gros modèles moléculaires à ce jour. Pour arriver à la construction de ce modèle, plusieurs dizaines de simulations ont été nécessaires sur la machine BlueWaters pour valider la stabilité du système moléculaire.

La taille des systèmes simulés a beaucoup augmenté ces dernières années. Ceci est rendu possible notamment grâce à une augmentation considérable de la puissance de calcul disponible pour les scientifiques. Une conséquence de l’augmentation de la taille de ces simulations est l’augmentation de la quantité de données produites. En effet, plus un système simulé est imposant, plus il y a de données à sauvegarder. En 2010 déjà, une simulation de turbulence avec le code GTC[45] répartie sur 16384 cœurs produisait 260Go de données toutes les 120 secondes[95]. En 2012, une simulation de plasma (VPIC) répartie sur 120000 coeurs a produit environ 30 To de données en une seule itération de sauvegarde[22]. Pour chaque simulation nécessaire à la construction du capside du VIH, environ 50To de données ont été produites pour un total de 1Po. Entre chaque simulation, des analyses ont été effectuées sur les trajectoires produites pour formuler de nouvelles hypothèses sur la construction de ce modèle.

Le rapport de stage ou le pfe est un document d’analyse, de synthèse et d’évaluation de votre apprentissage, c’est pour cela chatpfe.com propose le téléchargement des modèles complet de projet de fin d’étude, rapport de stage, mémoire, pfe, thèse, pour connaître la méthodologie à avoir et savoir comment construire les parties d’un projet de fin d’étude.

Table des matières

1 Introduction
2 État de l’art
2.1 Présentation des systèmes in-situ
2.1.1 Traitements in-situ synchrones
2.1.2 Traitements in-situ asynchrones
2.1.3 Traitements asynchrones sur noeuds dédiés (in-transit)
2.1.4 Infrastructures hybrides in-situ et in-transit
2.1.5 Services orientés données pour les applications in-situ
2.2 Exemples de calculs interactifs
3 Analyses in-situ avec FlowVR et Gromacs : présentation des outils
3.1 FlowVR
3.1.1 Historique de FlowVR
3.1.2 Description d’un module
3.1.3 Le modèle de dataflow
3.1.4 Fonctionnement du démon
3.1.5 Gestion des messages
3.1.6 Placement contraint de la mémoire et des processus
3.1.7 Forces de FlowVR pour des traitements in-situ
3.2 Gromacs
3.2.1 Simulation de dynamique moléculaire
3.2.2 Description interne de Gromacs
3.3 Méthode de couplage à Gromacs
3.3.1 Enjeux
3.3.2 Utilisation des méthodes maître/escalve de Gromacs
3.3.3 Instrumentation de chaque processus MPI
4 Application interactive in-situ : simulation de dynamique moléculaire intéractive
4.1 Contexte
4.2 Application biologique : le canal FepA
4.3 États des systèmes IMD actuels
4.4 Modification du code de Gromacs
4.5 Gestion des communications en entrée et en sortie de la simulation
4.6 Modulation de notre impact sur les performances de la simulation
grâce au filtrage in-situ
4.7 Expérimentations et résultats
4.8 Résultats d’expérience sur le FepA
4.9 Discussion
4.9.1 Utilité et validité des systèmes IMD à grande échelle
4.9.2 Intérêts et limitations de l’interactif
5 Conclusion

Rapport PFE, mémoire et thèse PDFTélécharger le rapport complet

Télécharger aussi :

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *