La demande en puissance de calcul et en taille mémoire va grandissante. D'autre part, on constate un recul des machines massivement parallèles au profit de plate-formes distribuées et hétérogènes à base de grappes de stations de travail. On parle à présent de grille de calcul (computational grid) dans laquelle on accède à la puissance de calcul comme on accède à l'électricité. Par ailleurs, on constate que le développement d'applications se fait de plus en plus grâce à des composants logiciels. Il ne s'agit plus, comme avant, de re-développer chaque nouvelle application parallèle simplement à partir du code séquentiel écrit dans un langage plus ou moins évolué. Dans le cadre du calcul scientifique, l'utilisation de bibliothèques de haut niveau est maintenant courante et des versions parallèles sont disponibles pour la plupart des architectures. En revanche, l'utilisation de plate-formes distribuées complique ce schéma de développement. En effet, ces architectures sont très hétérogènes et leur comportement très dynamique. Une solution intéressante consiste donc à utiliser des serveurs fournissant des services à des clients qui s'y connectent. Ces services ne sont pas limités au calcul scientifique et de nombreuses applications peuvent en bénéficier. Le but de GASP (Grid Application Service Provider) est de passer de nos résultats de recherche à une technologie pré-compétitive. L'objectif du projet est de proposer une approche portable pour le développement d'applications dans un processus de type ASP (Application Service Provider) sur une architecture distribuée de type grille de calcul. Une idée forte de GASP est de porter des applications industrielles de grande envergure sur les logiciels développés dans le cadre de nos projets de recherche et surtout de réutiliser des logiciels existants, portables et " standards ". La technologie GASP est composée d'un ensemble de trois modules :
|
![]() |
Le concept GASP doit permettre aux utilisateurs d'exploiter, via Internet, toute la puissance technologique de DIET. Où qu'ils soient dans le monde et quelles que soient les ressources (high-end ou low-end) dont ils disposent, ils pourront effectuer des requêtes, résoudre des problèmes numériques, tester de nouvelles bibliothèques de calcul, modifier de façon interactive leur modèle même si toutes ces opérations s'effectuent sur des données de très grande taille. Les opérations ainsi déportées peuvent être de toute sorte et pas uniquement numérique/algébrique puisque nous porterons entre autre un serveur de modélisation numérique de terrain.
Dans ce processus, le module GASP/Client envoie une requête à destination d'un GASP/Agent lui indiquant la nature du problème qu'il désire résoudre. Cette requête doit comporter, en plus du nom ou du moins de la description du problème à résoudre, une indication sur les paramètres (les données) nécessaires à la résolution et sur les résultats. Le GASP/Agent doit se charger de trouver parmi les ressources disponibles au sein de la confédération de GASP/Serveurs celui qui est en mesure de pouvoir répondre à la requête formulée par le client. Les critères de choix sont divers et recouvrent la disponibilité du serveur, sa capacité à traiter le problème, sa puissance de calcul, le rapport coût/performance, son adéquation avec la " classe de service " à laquelle a pu souscrire le client. Une fois un GASP/Serveur localisé, l'agent informe le client qui est directement mis en relation avec le serveur et ce dernier doit alors tout mettre en œuvre pour effectuer le calcul désiré ce qui implique de rapatrier les données depuis le client si elles ne sont pas déjà présentes sur le serveur ou de les redistribuer si elles sont localisées sur un autre serveur.
La plate-forme GASP doit, de plus, offrir une architecture permettant une supervision des différentes entités. Cette supervision est rendue possible en intégrant la technologie JMX (Java Managment Extensions) qui permet, outre de mettre en œuvre des aspects de supervision classique au moyen des Mbeans standards, ou dynamiques d'offrir à un développeur de serveur de calcul la possibilité de rendre son serveur supervisable sans pour autant devoir se soucier de savoir comment sont construits les objets gérés. Sa seule préoccupation pour la supervision de son serveur est de définir les points d'entrée et quelle vision il souhaite donner de son composant aux applications de supervision (modèle de l'information).
D'autre part la plate-forme GASP sera validée par la mise en œuvre d'au moins deux applications cibles provenant de domaines très différents. L'un concerne la simulation numérique de composant électronique et l'autre les modèles numériques de terrain. Cette validation à grande échelle sera mise en œuvre sur la plate-forme RNRT
C'est dans l'application concernant la simulation numérique de composant électronique qu'intervient l'IRCOM.