Une approche orientée modèle pour la parallélisation d'un code de calcul éléments finis

Autor: Taillard, Julien
Jazyk: francouzština
Rok vydání: 2009
Předmět:
Druh dokumentu: Text
Popis: La généralisation des processeurs multi-coeurs rendant la plupart des machines disponibles parallèles, l’utilisation de ce parallélisme est important afin d’obtenir des performances. Les travaux de cette thèse s’inscrivent dans le cadre du développement d’applications parallèles afin de bénéficier du parallélisme des architectures d’exécution actuelles. Dans cette thèse, nous proposons une méthodologie de développement d’applications parallèles basée sur l’ingénierie dirigée par les modèles (IDM). La spécification des applications est réalisée à l’aide du langage de modélisation UML. Après avoir défini cette méthodologie d’IDM, l’extension d’un profil UML basé sur le langage Array-OL est ensuite proposé afin d’étendre le domaine des applications modélisables aux applications de calcul scientifique. La partie suivante est la définition d’un métamodèle de langage de procédural. Ce métamodèle est indépendant des langages cibles et permet l’utilisation de la même transformation afin de produire ces différentes cibles. Ce métamodèle autorise l’utilisation des bibliothèques parallèles (OpenMP ou MPI) dans le but de produire du code parallèle. Ensuite la chaîne de compilation reposant sur le concept de transformations de modèles est développée et introduite dans le cadre de l’environnement Gaspard. La cible de cette compilation est les machines à mémoires partagées programmées à l’aide du langage OpenMP. Enfin, cette méthodologie est utilisée dans le cadre du développement d’applications de simulations de phénomènes électromagnétiques. À partir de ces modélisations, des patrons de conceptions génériques de calculs classiques sont extraits. Les résultats obtenus sur les applications modélisées statiquement sont satisfaisants.
The multicore processors generalization has led to the fact that most of the available computers are parallel, and utilization of this parallelism is important to obtain performance. This thesis deals with the development of parallel applications in order to benefit the available parallelism. In this thesis, we propose a methodology to develop parallel application based on the Model Driven Engineering (MDE). Applications specification is realized using the Unified Modeling Language (UML). After defining this methodology, an extension of the UML profile based on the Array-OL language is proposed to extend the application domain to scientific computing applications. The following part is the definition of a metamodel of procedural languages. This metamodel, independent of the targeted languages, allows to use the same model transformations for different targets. The use of a parallel library (such as OpenMP or MPI) makes possible the production of parallel code. Then, the transformation chain based on the model transformation concept is developped and introduced in the Gaspard framework. Shared memory machines are the target of this compilation using the OpenMP language. Finally, this methodology is used in the development of an electromagnetism simulation. Starting from models, generic design patterns of classical computations are extracted. Results given on the modeled applications are satisfying.
Databáze: Networked Digital Library of Theses & Dissertations