ASIM team
LIP6 Laboratory
Paris, France

PVM pour la machine MPC

L’implémentation est basée sur la version 3.3 de PVM et est optimisée pour l’architecture de la machine MPC. Elle n’utilise qu’un seul démon pour toute la machine virtuelle. Celui-ci initialise la machine virtuelle et assure la gestion de toutes les tâches comme si elles étaient locales à son nœud. L'architecture de PVM pour la machine MPC est décrite sur la figure ci-dessous :

La tâche maître PVM est lancée sur le noeud 0 sur lequel se trouve le démon. La seule façon de lancer des tâches filles sur les noeuds de calcul est de faire un pvm_spawn() dans la tâche maître. On ne peut pas lancer de tâche fille sur le noeud de démarrage sur lequel se trouve la tâche maître et le démon.

La connexion entre la tâche maître et le démon PVM se fait par une Socket Unix. En revanche, les communications démon / tâche fille ou tâche fille / tâche fille distantes utilisent une connexion HSL directe. Les communications entre tâches filles locales à un même noeud de calcul se font par l'intermédiaire d'un segment de mémoire partagée.

Compilation d'une application PVM pour la machine MPC

Les applications PVM pour la machine MPC doivent être écrites en langage C et compilée avec un compilateur C.
La tâche maître doit être liée à la librairie PVM standard libpvm3.a. Les tâches filles doivent être liées avec la librairie pour la machine MPC libpvm3pe.a.

Performances de PVM sur la machine MPC

Afin d'obtenir les meilleures performances, il est conseillé de ne pas lancer plus de deux tâches filles par noeud de calcul (une tâche par processeur). Actuellement, la meilleure utilisation de la machine MPC ne permet donc de lancer que six tâches filles PVM.

                                                TF/TF            TF/TF locales         TM/TF
Latence (micro-secondes)             251                     93                    7 121
Débit     (Mbit/s)                         148,9                 328,5                   20,9

    Légende :

            - TF/TF : communications entre deux tâches filles distantes
            - TF/TF locales : communications entre deux tâches filles locales à un même noeud
            - TM/TF : communications entre la tâche maître et une tâche fille (via le démon et donc via Socket Unix)

Il est conseillé de limiter au maximum les communications entre la tâche maître et les tâches filles afin d'avoir les meilleures performances possibles.

Les courbes de temps de transfert et de débit sont ci-dessous :


Contact O. Glück, to get more informations - this www page was made by O. Glück. 
HTML-4.0 compliantMade With Cascading Style SheetsPowered by FreeBSDPowered by Apache


Server design A. Fenyö
mpc@mpc.lip6.fr - contact people
About this Web Site
$Date: 1998/03/02 23:26:20 $ 
Copyright © 1997-1998 UPMC/LIP6
All rights reserved