Projet Apache

previous up next contents
Précédent : Fondements scientifiques Remonter : Projet APACHE, Algorithmique Parallèle, Programmation Suivant : Logiciels



Grands domaines d'application



Participants : P.-E. Bernard , J. Briat , A. Charaõ , M. Doreille , J.-G. Dumas , T. Gautier , R. Jungblut-Hessel , B. Plateau , N. Maillard , G. Mounié , J.-L. Roch , D. Trystram , G. Villard


Mots-clés : algèbre linéaire, calcul formel, chimie quantique, dynamique moléculaire, équations aux dérivées partielles, modèles de programmation, parallélisation d'applications, raffinement de maillage, trafic routier


Résumé : Les applications du projet se situent dans le domaine du calcul scientifique qui est traditionnellement un client du calcul à haute performance. Les applications visées ont un caractère irrégulier, relativement à leur parallélisation. Par irrégulier, nous entendons des applications pour lesquelles le coût des tâches de calcul ne peut pas être estimé facilement connaissant la taille des données, ou bien pour lesquelles la structure même du calcul ne peut pas être connue a priori (donc ne peut pas servir à des optimisations de compilation) ou enfin pour lesquelles la localité des données relativement aux calculs est faible.

La première motivation de cette activité de recherche est claire. Il s'agit de mettre en place une dynamique constructive entre outils et utilisateurs des outils. Une deuxième motivation est au coeur même du projet. La répartition de charge peut être de deux types : une technique qui ne connaît rien de l'application ou bien une technique plus sophistiquée adaptée à certaines caractéristiques de l'application. Le premier type est extensivement étudié dans le contexte des systèmes distribués et le deuxième est le fondement des outils de compilation pour la parallélisation automatique et de répartition de charge pour le calcul à haute performance. L'objectif du projet est de travailler dans le deuxième cadre, en adaptant les techniques suivant le profil de l'application. Il est donc important de disposer d'une variété d'applications présentant des profils distincts. Cette action qui était réduite au départ du projet tend à prendre de l'ampleur.


Les bibliothèques et méthodes mathématiques

Calcul formel

Résumé : Le calcul formel est un domaine du calcul scientifique où les algorithmes sont particulièrement gourmands en ressources de calcul et de mémoire et qui doivent donc être parallélisés afin de résoudre de véritables problèmes de l'ingénieur. De plus, ces algorithmes sont très irréguliers car ils manipulent des données de taille difficilement prévisible et non bornée. Les domaines traités sont les nombres algébriques, les polynômes et l'algèbre linéaire.

Ce travail se fait en liaison avec le projet IMAG ACTE du LMC-IMAG et le projet SAPHIR (Sophia). L'implantation d'algorithmes du calcul formel dans la bibliothèque GIVARO a permis de tester sur des applications conséquentes la validité et les performances du noyau exécutif ATHAPASCAN et a été moteur dans la spécification de l'interface applicative. En continuation de ce travail, le noyau exécutif ATHAPASCAN a été partiellement intégré comme support exécutif dans une bibliothèque pour la programmation d'algorithmes parallèles avec le langage ALDOR (NAG), utilisé en calcul formel. Ce travail a montré expérimentalement un bon comportement de la bibliothèque sur quelques schémas algorithmiques simples. De nouvelles directions de recherche sont prévues concernant une intégration plus complète d'ATHAPASCAN avec le langage ALDOR et la conception d'un ensemble d'algorithmes efficaces et fondamentaux en algèbre linéaire. Ils seront utilisés pour le calcul de bases de Gröbner ou la résolution d'équations différentielles.

Algèbre linéaire sur des structures creuses

Résumé : Les bibliothèques parallèles d'algèbre linéaire dense sont maintenant bien diffusées. L'utilisation de structures creuses nécessitent des schémas algorithmiques qui prennent en compte de façon dynamique le remplissage des matrices.

Ce travail se fait en collaboration avec le CEA-Grenoble (B. Brun, Direction des Réacteurs Nucléaires) et l'École Polytechnique de Bucarest (B. Dumitrescu).

En calcul scientifique, beaucoup de problèmes se ramènent à la résolution numérique de très grands systèmes linéaires creux (optimisation par méthode de Newton, éléments finis...) qui est l'archétype des problèmes irréguliers. Deux approches complémentaires sont suivies. Nous étudions la parallélisation d'un code itératif (basé sur les méthodes de type Gradient Conjugué, CS-Stab et GMRES). Par ailleurs, les méthodes directes de résolution sont une alternative intéressante pour la parallélisation à cause de l'espace mémoire fourni par les plates-formes à mémoire distribuée. Dans ce cadre, au problème intrinsèque de remplissage de la matrice lors de la factorisation, s'ajoute celui de la régulation de charge en parallèle. Pour ce problème, il est attendu une analyse comparative fine entre régulation dynamique (ordonnancement en ligne avec prise en compte de la localité) et placement statique (tirant parti des connaissances sur le graphe d'élimination).

Équations aux Dérivées Partielles et raffinement de maillage

Résumé : La parallélisation de problème d'EDP se fait classiquement par des méthodes de décomposition de domaines. Dans ce cadre, une modélisation fine de certains phénomènes physiques impose de raffiner le maillage en certaines zones du domaine. Ce raffinement peut par ailleurs s'accompagner de l'utilisation d'un modèle différent (couplage de code). Ce raffinement peut être statique (e.g. dépendant d'une géométrie fixe du problème) ou bien dynamique (e.g. déplacement d'une turbulence). Ceci pose des problèmes spécifiques de répartition dynamique de la charge.

Ces travaux se font en collaboration avec le projet IDOPT (Inria-Grenoble).

Les méthodes actuelles de décomposition de domaines maîtrisent assez bien la distribution statique d'un maillage, mais le parallélisme s'avère souvent inefficace sur des problèmes en vraie grandeur en raison du déséquilibre de la charge de travail dû au raffinement de maillage. Nous voulons tester les capacités d'ATHAPASCAN à résoudre ces problèmes de raffinement dynamique de maillage. Deux domaines d'application sont actuellement en cours d'étude : un problème d'évolution en océanographie qui fait intervenir des maillages structurés et des méthodes multigrilles, et un problème de turbulence en aérodynamique, qui fait intervenir des maillages non structurés. L'approche suivie ici est de travailler sur des codes simples afin de dégager des méthodes algorithmiques et des méthodes de répartition de charge adaptées.

Chimie et biologie

Résumé : La simulation des particules, atomes et molécules, suivant les lois de la mécanique quantique ou newtonienne sont des algorithmes coûteux (de complexité égale au carré, au cube ou à la puissance 4 du nombre de particules mises en jeu). Ces simulations trouvent des applications dans de nombreux domaines : pharmacologie, structure des matériaux, astrophysique, etc. Le parallélisme est une voie incontournable pour traiter plus vite des phénomènes plus complexes afin de rendre l'approche de modélisation et de calcul cohérente avec l'approche expérimentale.

Dynamique moléculaire

Ces travaux sont menés conjointement avec le Laboratoire de Biologie Moléculaire et Structurale du CEA-Grenoble (Y. Chapron).

La dynamique est une simulation du mouvement des atomes et des molécules par calcul de leurs déplacements. Cette technique est largement utilisée pour simuler les propriétés des solides, des liquides et des gaz. Elle est également employée pour étudier les conformations des macromolécules, et pour la compréhension des mécanismes réactionnels des protéines dans les structures biologiques. Le développement des médicaments de demain sera lié à la compréhension de ces mécanismes. Nous avons développé un code, basé sur une approche de décomposition de domaine et utilisant une approximation par rayon de coupure. Les techniques et programmes développés permettent de calculer des dynamiques avec des systèmes de plus de 400 000 atomes sur des périodes de plus de 100 pico-secondes. Ce programme met en évidence l'intérêt de l'approche de programmation proposée par le projet. Les perspectives sont d'étendre les fonctionnalités du code au plan de la modélisation biologique et d'envisager des variations. Un couplage avec des codes quantiques est aussi à l'étude.

Chimie théorique et astrophysique

Ces travaux se mènent en collaboration avec le laboratoire d'astrophysique de Grenoble (P. Valiron).

Les problèmes de simulation numérique en chimie [*] constituent un corpus d'applications intéressantes pour le parallélisme. Une première étude a été entreprise sur la parallélisation à grosse granularité d'un code industriel de chimie quantique ab initio faisant référence (Gaussian-94), afin de préparer la parallélisation massive du traitement complet de la corrélation électronique, qui n'a pas encore été abordée dans les codes de production existants. Ces codes de production sont utilisés à la fois pour la recherche fondamentale (en astrophysique pour l'identification de molécules dans l'espace et la modélisation de la réactivité chimique à très basse température) et dans le monde industriel pour la modélisation de la catalyse et de la synthèse de nombreux composés. Cependant la généralisation de l'emploi de la modélisation en chimie théorique est limitée par la complexité des calculs et la place mémoire occupée qui croissent comme une puissance élevée du nombre d'atomes mis en jeu, d'où le recours au parallélisme et à l'approche proposée par ATHAPASCAN.

Trafic routier

Résumé : La modélisation du trafic routier est abordée par plusieurs types de méthodes : les modèles statiques qui prennent en compte des équations de flux, des modèles dynamiques continus qui considèrent le trafic comme un fluide, et les modèles à événements discrets. C'est à ces derniers que nous nous intéressons car ils sont couramment utilisés en modélisation des systèmes informatiques. L'apport de certaines techniques de modélisation et la parallélisation des algorithmes de simulation nous permet d'envisager de faire de la prédiction sur de grandes zones urbaines.

Cette application se situe dans le cadre d'un projet européen HIPERTRANS et se fait en collaboration avec B. Ycart du projet IMAG MAI (LMC), le projet SLOOP et Simulog (entre autres). Il s'agit de mettre au point un simulateur de trafic urbain qui soit à même de rendre des services prédictifs en temps réel. Pour cela, nous travaillons à la mise au point de techniques de simulation rapides et parallélisées pour la modélisation des phénomènes transitoires de circulation routière.



Notes:

...chimie
En anglais, computational chemistry


previous up next contents Précédent : Fondements scientifiques Remonter : Projet APACHE, Algorithmique Parallèle, Programmation Suivant : Logiciels