THIS DOCUMENT IS OBSOLETE. Please, see the update of this document, on the new Alexandre Fenyo's web site

La soutenance a eu lieu le Jeudi 5 Juillet 2001
à 10h, pièce 203-205, Bâtiment 41, Campus Jussieu, 4 place Jussieu, 75005 Paris
Plan d'accès au bâtiment 41

Conception et réalisation d'un noyau de communication bâti sur la primitive d'écriture distante, pour machines parallèles de type "grappe de PCs"

Available in the following file formats :

  • Adobe Acrobat (low resolution, screen optimized) :
    download thesis-lowres.pdf - 3,4 Mb

  • Adobe Acrobat (high resolution, press and printer optimized) :
    download thesis-highres.pdf - 6,2 Mb

  • Adobe Postscript (low resolution, screen optimized) :
    download thesis-lowres.ps.gz - 2,3 Mb

  • Adobe Postscript (high resolution, press and printer optimized) :
    download thesis-highres.ps.gz - 7,2 Mb


Slides

Available in the following file formats :


Plan d'accès à la salle de la soutenance

Résumé

Cette thèse présente l'étude et la réalisation de MPC-OS, un noyau de communication pour machines parallèles de type grappe de PCs, bâti sur la primitive d'écriture distante.

Plus particulièrement, elle présente un empilement de protocoles implémentés dans le noyau Unix et accessibles autant aux applications en mode utilisateur qu'aux modules internes du système d'exploitation. Basé sur une primitive de DMA matérielle rudimentaire sur réeseau d'interconnexion Gigabit, MPC-OS fournit des services à forte valeur ajoutée : communications sur canaux virtuels, sécurisation des transmissions, échanges de données entre espaces de mémoire virtuelle et gestion mémoire avec garanties d'intégrité des tampons de communication. La difficulté a consisté à concevoir ces services sans copie de tampon, pour une efficacitée maximale.

L'allocation dynamique des ressources est externalisée auprès d'un gestionnaire distribué, basé sur un coeur d'ORB multi-thread développé spécifiquement pour MPC-OS.

Après une exploration détaillée des performances logicielles, on engage alors une approche nouvelle du problème de la sécurisation : une étude stochastique du phénomène de double-faute nous permet de montrer que, sous certaines conditions, un protocole de correction simpliste permet d'obtenir simultanément de bonnes performances et une sécurisation satisfaisante.

MPC-OS équipe aujourd'hui plusieurs plate-formes MPC réparties dans différentes universités de France. Il a permis de développer des portages optimisés des environnements de programmation parallèle PVM et MPI sur la machine MPC, et a été utilisé par des industriels (GEC Marconi Aerospace Systems et Parsytec Computer) pour la validation des développements matériels de machines construites à partir des mêmes composants que la plate-forme MPC.

Abstract

This Ph.D Thesis presents the design and construction of MPC-OS, a communication kernel built on the remote-write primitive and dedicated to parallel computers made of clusters of workstations.

Moreover, it discusses a stack of protocols implemented inside the Unix kernel, and available either to the user-level processes or to the operating system internal modules. Based on a simple Direct Memory Access hardware primitive for Gigabit interconnect networks, MPC-OS provides many value-added services : communications through virtual channels, reliable transmissions, data exchanges between virtual memory areas and memory management preserving the integrity of communication bu_ers. In order to get as much efficiency as possible, zero-copy mechanisms were used for all those services. This constraint represents the major difficulty of this work.

The dynamic allocation of resources is handled by a distributed manager, based on a multi-threaded Object Request Broker specially designed for MPC-OS.

After a detailed survey of the software performances, we studied the transmission reliability issue through a new approach : a probabilistic model in fault coupling allowed us to show that, if we fulfil some basic requirements, an elementary protocol may achieve both good performances and signi_cant reliability.

Today, MPC-OS runs on various MPC clusters and is spread out over several French universities. It has allowed the optimised port of the major parallel programming envi- ronments such as PVM and MPI to the MPC computer. Some computer manufacturers (GEC Marconi Aerospace Systems and Parsytec Computer) have used ittovalidate their hardware developments based on hardware components from the MPC computer.

Mots-clés

machine parallèle, environnement de programmation, écriture distante, sécurisation, gestion mémoire, allocation dynamique de ressources

Keywords

parallel computer, cluster of workstations, programming environment, remote write, reliability, memory management, dynamic resource allocation

Aim of my Work

The aim of my work was to design secure network protocols and Unix kernel software components to allow fast communications accross the 1Gbit/s wormhole direct memory to memory network of the MPC parallel computer.

I also wrote a multi-threaded Object Request Broker in C++ to let the distributed kernel components communicate together. Finally, I developped a stochastic approach on fault-coupling and redundant systems reliability to show that simple protocols could be sufficient to achieve the needs of security in communications over high speed networks of parallel computers.

The full source of the Operating System (based on BSD-Unix) I wrote for the MPC parallel computer is available here (about 40000 lines of mixed kernel/user-level C/C++/Perl programs).


Here are the performances obtained with the MPC parallel computer and the low-level kernel communication layer (PUT) I designed :


The whole MPC project has been included in the 100 most important facts (Les 100 faits marquants) published by the SPI (Sciences for Engineers - Sciences pour l'ingénieur) department of the french public research organisation CNRS (Centre national pour la recherche scientifique) :
During my thesis, I've established the (basic) following results on stochastic processes :

Note that the third result is important for engineers : it allows to apply the first two results to real phenomena analysis.