Sujet : Optimisation des communications pour le couplage de code dans la plateforme SALOME

Responsables : Alexandre DENIS (INRIA), André RIBES (EDF R&D)
Téléphones : 05.24.57.41.14
Courriels : Alexandre.Denis@inria.fr, Andre.Ribes@edf.fr

Présentation du sujet :


Les applications de couplage de code apportent de nouvelles problématiques dans la gestion des communications réseau. Dans le cadre général, une application de couplage de code comporte au moins deux niveaux de communications: dans et entre les codes. Dans le contexte de la plateforme SALOME, le couplage entre les codes est réalisé à l'aide de l'intergiciel CORBA, qui utilise nativement les réseaux via TCP/IP. Les codes de calculs, utilisés à l'intérieur des couplages, sont parfois eux-même parallèles, avec des communication gérées via MPI sur des réseaux haute performance tels que Infiniband ou Myrinet.

Il existe donc plusieurs catégories de communications qui cohabitent et interagissent. Les deux problématiques principales qui en résultent sont :

Au niveau des plates-formes matérielles, les couplages exigeant des ressources en grand nombre, il peut être souhaitable de coupler deux codes, chacun placé sur sa propre grappe. Il en résulte des communications de couplage inter-grappe. Les grappes étant la plupart du temps en adressage IP privé, avec souvent un pare-feu protégeant l'accès à la frontale, les noeuds des différentes grappes n'ont pas de connectivité directe entre eux, rendant impossible un couplage CORBA par TCP/IP.

Pour résoudre ces problèmes de cohabitation CORBA+MPI, de portabilité sur différents réseaux, et de connectivité, l'équipe-projet Runtime propose la plate-forme de communications PadicoTM qui prend en charge l'intégralité des communications et gère la concurrence. Elle est construite sous forme de composants logiciels assemblables librement pour construire une pile de communication adapté à chacun des cas. Elle propose en particulier des composants capables de gérer les réseaux haute-performance, d'assurer les connections sur les plates-formes à connectivité restreinte, de gérer la concurrence. Elle rend chacune des méthodes de communication utilisable aussi bien pour MPI que pour CORBA.

Dans le cadre de cette collaboration, il s'agit donc de porter YACS (le moteur de workflow de la plate-forme SALOME) ainsi que son modèle de programmation à base de composant logiciel parallèle et distribué sur PadicoTM. Une fois le portage réalisé, toutes les capacités de PadicoTM peuvent être explorées pour YACS : routage des communications CORBA de couplage par les réseaux rapides, routage des communications CORBA entre grappes, y compris les grappes en adresses privées non-routées, cohabitation de MPI et CORBA dans les processus de calcul.

Mot-clés : grappes de calcul, CORBA, SALOME, couplage de codes


Commentaires : Le stage se déroulera essentiellement à Bordeaux, au sein de l'équipe INRIA Runtime, après une formation initiale chez EDF R&D.


Références :

PadicoTM, SALOME