Composants Java répartis pour la résolution d'équations Maxwell 3D




Les systèmes à objets répartis sont de plus en plus présents dans les environnements logiciels pour le calcul numérique et le parallélisme. En particulier, la technologie Java et celle des composants logiciels sont en passe de devenir incontournables.
C'est en particulier le cas dans les architectures de type GRID, c'est à dire le calcul sur un ensemble de machines potentiellement réparties sur toute la planête.
On parle alors de GRID Components.
La notion de composants pour le parallélisme devrait permettre une utilisation et une ré-utilisation bien plus simple et bien plus répandue des logiciels numériques et parallèles.

Dans le même temps, la simulation numérique de phénomènes électromagnétiques en domaine temporel (sans supposer d'oscillations harmoniques à fréquence donnée) et en domaine fréquentiel permet d'attaquer des environnements physiques très différents et donc des domaines d'applications riches, en télécommunications ou en ingénierie: calcul, caractérisation et optimisation d'antennes, compatibilité électromagnétique, furtivité radar, modélisation de matériaux absorbants entre autres. Ce type de simulation nécessite le développement de logiciels de résolution numérique du système d'équations de Maxwell en 3 dimensions d'espace autour de géométries aux formes complexes. Par ailleurs, toute simulation numérique réaliste des phénomènes physiques en question requiert la prise en compte de discrétisations fines des domaines de calcul. Il s'en suit des temps de calcul et des besoins en capacité mémoire importants qui rendent indispensable le recours au calcul parallèle.

L'objectif général de ce stage de DEA consiste à expérimenter et proposer des solutions à un challenge important et difficile:
       définir en Java un ensemble de composants répartis pour
       la resolution des equations de Maxwell 3D pour l'électromagnétisme en domaine temporel.

Nous présentons maintenant en détail le cadre et les objectifs de ce sujet de stage de DEA, et ses perspectives.



Afin de simplifier la programmation parallèle, nous avons développé ProActive, une bibliothèque 100% Java, qui fournit :
    o des objets distants et actifs pour le parallélisme,
    o des appels asynchrones avec futurs transparents,
    o de la migration d'objets actifs (mobilité),
    o des descripteurs XML pour le déploiement des composants,
    o des outils interactifs de degugging et de contrôle : IC2D.
Dans ce stage, nous utiliserons cette bibliothèque afin de simplifier la programmation parallèle de la résolution numérique des équations de Maxwell 3D.

Outre sur stations de travail et machines parallèles, cette bibliothèque fonctionne sur cluster de PCs, et en particulier celui de l'INRIA Sophia Antipolis qui servira de base aux premières expérimentations (32 machines bi-processeurs, FastEthernet 100 Mbps, deux 1Gbps switches, en cours d'extension).
D'autre part, l'INRIA dispose du réseau expérimental dit VTHD (Vraiment Très Haut Débit) qui relie sur toute la France un ensemble de clusters et machines parallèles par des canaux optiques à 2,5 Gbit/s. On pourra éventuellement utiliser ce réseau pour les expérimentations de type Metacomputing.

Le point départ de ce stage sera fourni par un logiciel prototype de résolution numérique des équations de Maxwell 3D en domaine temporel qui fait appel à des schémas de discrétisation de type volumes finis en maillages tétraédriques.
Il existe une version Fortran 77 et maintenant une version Java de ce logiciel, ainsi qu'une version parallélisée et répartie avec ProActive. Ces deux dernières versions en particulier serviront de base à la construction d'une architecture à base de composant pour Maxwell 3D en domaine temporel. On s'attachera à différencier, sous forme de composants, les aspects modeleur, répartition, résolution, sauvegarde des résultats et affichages.

En fonction des affinités de l'étudiant, ce stage pourra être plus ou moins formel, et présenter plus ou moins de mise en oeuvre.

Ces travaux pourront naturellement se poursuivre en Thèse de Doctorat.



Encadrement :    Francoise Baude    Denis Caromel     et     Stephane Lanteri
Téléphone : 04 92 38 76 31 ou 78 07
Email : Francoise.Baude@sophia.inria.fr,Denis.Caromel@inria.fr,Stephane.Lanteri@inria.fr
Laboratoire ou équipe : INRIA Sophia Antipolis -- I3S-CNRS, Projets OASIS et CAIMAN
 
Prérequis : langages à objets, programmation répartie et parallèle, des bases en calcul numérique
Matériel et logiciels utilisés : Stations de travail

Lieu du stage: INRIA Sophia Antipolis, Nice, France
 

Références:

     Towards Seamless Computing and Metacomputing in Java
     D. Caromel, W. Klauser, J. Vayssiere,
     pp. 1043--1061 in Concurrency Practice and Experience,
     September-November 1998, 10(11--13), Editor Geoffrey C. Fox, Published by Wiley & Sons.
     Available here

     A Centered Second-Order Finite Volume Scheme for the
     Heterogeneous Maxwell Equations in Three Dimensions
     on Arbitrary Unstructured Meshes
     S. Serge, M. Remaki, L. Fezoui,
     Rapport de Recherche INRIA No. 4461.
     Available here