Mots clés : programmation objet,
parallélisme et répartition, représentation Meta-Objet,
Metacomputing .
Participants : FranÇoise Baude,
Alexandre Bergel, Denis Caromel [correspondant], Florian
Doyon, Fabrice Huet, Olivier Nano, Emmanuel Reuter, Julien
Vayssière.
Notre objectif est de permettre l'exécution d'une même
application sur une architecture multi-processeurs à mémoire
partagée, sur un réseau de stations de travail, sur Internet
ou encore sur n'importe quelle combinaison hiérarchique.
Pour attaquer ce problème, nous avons développé une
bibliothèque 100% Java, qui fournit des threads transparents,
des objets distants, des appels asynchrones avec futurs
transparents, et des mécanismes de synchronisation de haut
niveau. Cette bibliothèque permet très facilement de répartir
et rendre collaborative toute application écrite en Java.
Afin de démontrer la puissance de cette bibliothèque, nous
avons développé des applications collaboratives parallèles et
distribuées qui permettent à plusieurs utilisateurs de
travailler ensemble sur une scène 3D avec des mécanismes
d'élection et de synchronisation : l'image de la scène est
calculée par un ensemble dynamique de moteurs de rendu
utilisant un algorithme de lancer de rayon. Nous avons
également développé DIVA (Distributed and Interactive Virtual
world in Java), une application répartie collaborative pour
un monde virtuel interactif entièrement écrit en Java en
utilisant Java3D, RMI, and ProActive.
Enfin, une étude récente a démontré que l'utilisation de
ces bibliothèques permet d'économiser 30 % de code. ProActive
est ainsi particulièrement adaptée aux applications réparties
sur l'Internet grâce à la réutilisation de code initialement
non réparti, à une synchronisation automatique et à la
possibilité de faire migrer des activités d'une machine à
l'autre.
Un environnement de mise au point (IC2D : Interactive
Control & Debug for Distribution) de contrôle et
inspection, pour les applications développées en ProActive
est désormais disponible.
Pour plus d'information, consulter [11] et
la page http://www-sop.inria.fr/oasis/proactive.