Parallelization and multiprogramming for an irregular application of molecular dynamics.
Parallélisation et multiprogrammation pour une application irrégulière de dynamique moléculaire opérationnelle
Résumé
Many numerical parallel methods are implemented to use the modern super computer, but those methods rarely use the technics of regulation and lose their efficiency on unstructured problems. In particular, the numerical simulation of the motion of atoms inside biological structures is one of the irregular problems that need many computational power. The subject concerned in this thesis, through the achievement of a parallel molecular dynamics (MD) software to study proteins, show how threads (or light-weight processes) are useful to parallelize such an application. This work take part of the INRIA-IMAG APACHE project that carry out ATHAPASCAN, a runtime system for the irregular parallel applications, and in collaboration with the laboratory BMC CEA-Grenoble. After an introduction on parallelization technics for applications, we present basic concept of a parallelization technics using threads and message passing. The second part of this document give a synthetic view of the MD models used to study proteins and presents the cut off radius method to approximate forces. Next we propose a parallel implementation of this cut off method using a spatial decomposition of the domain. We study some mapping strategies to find the better compromise between load balancing and communication minimization. Then, we show how multiprogramming is able to overlap communication with computation. Finally, we propose a dynamic load balancing technics of computational load. Many performance measurement on the IBM-SP1 and on the CRAY-T3E are done, and they show scalability of our parallel algorithms.
De nombreuses méthodes de calcul numérique parallèle sont développées pour utiliser les super-ordinateurs d'aujourd'hui, mais ces méthodes utilisent rarement les mécanismes de régulation et perdent en efficacité sur des problèmes non structurés. En particulier, la simulation numérique, par dynamique moléculaire (DM), du mouvement des atomes des protéines dans les structures biologiques est un de ces problèmes irréguliers qui demande beaucoup de puissance de calcul. Cette thèse, à travers la réalisation d'un programme parallèle de DM opérationnel pour l'étude des protéines, s'intéresse à montrer l'apport des processus légers pour la parallélisation de ce type d'application. Ce travail s'inscrit dans le projet INRIA-IMAG APACHE de réalisation du support d'exécution ATHAPASCAN pour les applications parallèles irrégulières et en collaboration avec le laboratoire BMC du CEA-Grenoble. Après une introduction sur la parallélisation d'applications, nous présentons les concepts de base de la parallélisation par des processus légers et des échanges de messages. La deuxième partie du document propose une synthèse des éléments du modèle de DM pour l'étude des protéines et présente la méthode du rayon de coupure pour l'approximation des forces. Dans la suite nous proposons une parallélisation de cette méthode du rayon de coupure par décomposition du domaine de simulation. Nous étudions plusieurs stratégies de placement des calculs afin de trouver le meilleur compromis entre l'équilibre de charge et la minimisation des communications. Puis nous montrons comment la multiprogrammation permet de recouvrir les communications par des calculs. Enfin nous terminons en proposant un mécanisme d'équilibre dynamique de la charge de calcul. De nombreuses mesures sur le IBM-SP1 et le CRAY-T3E sont présentées et montrent l'extensibilité de nos algorithmes parallèles.