N melab e g talbi
This presentation is the property of its rightful owner.
Sponsored Links
1 / 38

N. Melab & E-G. Talbi PowerPoint PPT Presentation


  • 62 Views
  • Uploaded on
  • Presentation posted in: General

-G. N. Melab & E-G. Talbi. PARA llel and DIS tributed E volving O bjects http://paradiseo.gforge.inria.fr/. Paradis EO. MPI ( LAM, CH ). EO. MO. MOEO. PVM. PThreads. Parallélisme sur supports dédiés Passage de messages ( MPI , PVM) Déploiement sur réseaux de stations

Download Presentation

N. Melab & E-G. Talbi

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


N melab e g talbi

-G

N. Melab & E-G. Talbi


Para llel and dis tributed e volving o bjects http paradiseo gforge inria fr

PARAllelandDIStributed EvolvingObjectshttp://paradiseo.gforge.inria.fr/

ParadisEO

MPI (LAM, CH)

EO

MO

MOEO

PVM

PThreads

  • Parallélisme sur supports dédiés

    • Passage de messages (MPI, PVM)

      • Déploiement sur réseaux de stations

    • Multi-programmation (PThreads)

      • Machines multi-processeurs à mémoire partagée (SMPs)

    • Environnements parallèles et distribués

      • Cluster of SMPs (CLUMPS)

    • Transparence à l’utilisation

Projet Européen

(Geneura Team,

INRIA, LIACS)

http://eodev.sourceforge.net

  • Contributions

    • Multi-Objective EO (MOEO)pour la mise en œuvre de l’optimisation multi-objectif

    • Moving Objects (MO) pour les métaheuristiques à solutionunique

    • ParadisEO pour les métaheuristiques parallèles hybrides

S. Cahon, N. Melab and E-G. Talbi. ParadisEO: A Framework for the Reusable Design of Parallel and

Distributed Metaheuristics. Journal ofHeuristics, Vol.10(3), ISSN:1381-1231, pages 357-380, May 2004.


N melab e g talbi

ParadisEO-G : ParadisEO sur Globus

ParadisEO-G

EO

MO

MOEO

MPICH-G2

Services Globus GT4

  • Re-penser le framework pour prendre en compte les caractéristiques des grilles

    • Multi-institutionnelle, hétérogène, volatile, à grande échelle

    • Problèmes : sécurité, performance, tolérance aux pannes, déploiement efficace, etc.

  • Coupler ParadisEO Globus

    • Interface de programmation (MPICH-G2)

    • Services de gestion de ressourceset des communications – authentification et autorisation, transfert efficace, information, …

N. Melab, S. Cahon and E-G. Talbi. Grid Computing for Parallel Bioinspired Algorithms. Journal of Parallel

and Distributed Computing (JPDC), Elsevier Science, Vol. 66(8), Pages 1052-1061, Aug. 2006.


N melab e g talbi

Démarche de gridification de ParadisEO

  • Outil de construction d’une organisation virtuelle qui fournit les services de Globus et MPICH-G2

    • Mission d’un IR INRIA associé (4 mois)

    • Différentes images système avec des scripts d’installation et post-installation

    • Utilisée au sein de Grid5000 et Naregi

  • Couplage naturel avec ParadisEO car …

    • … même interface entre MPICH et MPICH-G2

  • Transfert de données efficace entre composants ParadisEO – Différents algorithmes

    • Projet de Master Pro 2 TIIR


N melab e g talbi

Plan

  • La boîte à outils Globus

  • La bibliothèque de communication MPICH-G2

  • Construction d’une organisation virtuelle Globus

  • Utilisation de ParadisEO-G pour le PSP


The globus toolkit

The Globus Toolkit™

The Globus Project™

Argonne National LaboratoryUSC Information Sciences Institute

http://www.globus.org


Globus toolkit

Globus Toolkit™

  • C’est un toolkit pour la gestion de problèmes techniques pour le …

  • … développement d’outils, services et applications pour les grilles

    • Fournit un “bag of technologies”

    • Fournit une implémentation standard de protocoles et APIs pour les grilles

    • Permet le développement incrémental d’outils et applications pour les grilles

    • Est un toolkit logiciel open source


Architecture en couches

Architecture en couches

Applications

High-level Services and Tools

DRM

Grid Status

PUNCH

Cactus

MPI

globusrun

Nimrod/G

Condor-G

Core Services

GASS

GRAM

Metacomputing Directory Service

Globus Security Interface

Replica Catalog

GridFTP

I/O

Local Services

Condor

MPI

TCP

UDP

Solaris

LSF

PBS

NQE

Linux

AIX


Architecture en couches par analogie l architecture d internet

Application

Application

Internet Protocol Architecture

“Coordination de ressources multiples”: services d’infrastructure, services d’application distribués

Collective

“Partage de ressources”: négociation d’accès, contrôle d’utilisation

Ressources

“Communication”: communication (protocoles d’Internet) & sécurité

Connectivité

Transport

Network

“Contrôle local”: contrôle et accès aux ressources

Fabrique

Lien

Architecture en couches (par analogie à l’architecture d’Internet)


La couche fabrique

La couche Fabrique

  • Ressources partagées …

    • Ordinateurs individuels, pools Condor, systèmes de fichiers, archives, catalogues de meta-données, réseaux, capteurs, etc.

  • … définies par des interfaces et non pas par des caractéristiques physiques


La couche connectivit

La couche Connectivité

  • Communication

    • Protocoles d’Internet : IP, DNS, routage, etc.

  • Sécurité: Grid Security Infrastructure (GSI)

    • Authentification, autorisation, mécanismes de protection de messages dans un environnement multi-institutionnel

    • Public key technology, SSL, X.509, GSS-API

    • Supporting infrastructure: Certificate Authorities, certificate & key management,

GSI: www.gridforum.org/security


La couche ressources

La couche Ressources

  • Grid Resource Allocation Management (GRAM)

    • Allocation à distance, réservation, monitoring, contrôle de ressources de calcul

  • Protocole GridFTP (extensions de FTP)

    • Accès à et transport de données haute performance

  • Grid Resource Information Service (GRIS)

    • Accès à l’information de structure et d’état des ressources

  • Réservation réseau, monitoring, contrôle

GridFTP: www.gridforum.org

GRAM, GRIS: www.globus.org


La couche collective

La couche Collective

  • Serveurs d’index et services de meta-données

  • Courtiers de ressources (ou resource brokers) (ex., Condor Matchmaker)

    • Découverte et allocation de ressources

  • Services de réplication et catalogues de réplicas

  • Services de co-réservation et co-allocation

  • Services de gestion de workflows, …

Condor: www.cs.wisc.edu/condor


Pour plus d information

Pour plus d’information …

  • Globus Project™

    • www.globus.org

  • Grid Forum

    • www.gridforum.org

  • Livre (Morgan Kaufman)

    • www.mkp.com/grids


N melab e g talbi

Plan

  • La boîte à outils Globus

  • La bibliothèque de communication MPICH-G2

  • Construction d’une organisation virtuelle Globus

  • Utilisation de ParadisEO-G pour le PSP


Architecture de mpich

Architecture de MPICH


Mpich g2

MPICH-G2

  • L’environnement grille

    • Authentification et autorisation (GSI)

    • Transfert d’exécutables entre sites (GASS)

    • Systèmes et politiques d’ordonnancement différents (GRAM – ordonnanceurs locaux)

    • Allocation de ressources sur différents sites (DUROC+GRAM)

    • Méthodes de communication différentes (MPI ou Globus IO)

  • MPICH-G2 permet …

    • … de cacher l’environnement de la grille

    • … d’utiliser les services fournis par Globus


Comment mpich g2 marche 1

Comment MPICH-G2 marche (1)

(GSI)

(fichier RSL)

  • GSI: Grid Security Infrastructure

  • GASS: Global Access to Secondary Storage

  • MDS: Monitoring and Directory Service

  • GRAM: Grid Resource Allocation and Management

  • DUROC: Dynamically-Updated Request Online Co-allocator

  • RSL: Resource Specification Language


Comment mpich g2 marche 2

Comment MPICH-G2 marche (2)

  • Authentification (grid-proxy-init)

    • Obtenir un certificat permettant l’accès aux ressources de chaque domaine d’administration (site)

    • Appel à GSI

  • Sélection de ressources avec MDS

  • Génération manuelle ou avec mpirun d’un script RSL

    • Un script par site

    • Spécification de ressources (processeurs, …) et besoins (CPU, mémoire, …) et paramètres (localisation des exécutables, variables d’environnement , ….)


Comment mpich g2 marche 3

Comment MPICH-G2 marche (3)

  • Appel à DUROC

    • Déploiement à l’aide de scripts RSL des tâches de l’application en utilisant des appels à GRAM

  • Déploiement de tâches avec GRAM

    • Chargement éventuel d’exécutables GASS

    • Communication entre processus viaGlobus IOou autre


Ex cution d applications mpich g2

Exécution d’applications MPICH-G2

  • Avant installation …

    • … l’utilisateur doit avoir accès à Globus

  • Compilation et exécution …

Compilation of MPICH-G2 based application is complete

% mpirun -dumprsl -np 12 ring

RSL script to stdout

% mpirun -globusrsl my.rsl

mpirun invokes globusrun

+

(&(resourceManagerContact="sdd113")

(count=12)

(label="subjob 0")

(environment=

(GLOBUS_DUROC_SUBJOB_INDEX 0))

(directory="/home/voxel")

(executable="/home/voxel/ring")

)

<skip>


N melab e g talbi

Plan

  • La boîte à outils Globus

  • La bibliothèque de communication MPICH-G2

  • Construction d’une organisation virtuelle Globus

  • Utilisation de ParadisEO-G pour le PSP


A master worker globus vo

A Master-Worker Globus VO

  • Master node contains the …

    • … Certification Authority

    • … Monitoring and Discovery System (MDS)

    • and has users credentials

  • Each slave node has …

    • … a Globus environment ready to be activated

    • … and MDS service activated

    • … a GRAM for local jobs submission (fork)

    • … RFT and GridFTP activated

    • … a Security service activated


Globus deployment overview 1

Globus deployment overview (1)

Reservation tool

I want 20 nodes

Frontal


Globus deployment overview 2

Globus deployment overview (2)

Reservation tool

node-1

node-4

node-x

Frontal


Globus deployment overview 3

node-1

node-4

node-x

Globus deployment overview (3)

Reservation tool

Globus

image

Frontal

griddeploy


Globus deployment overview 4

node-1

node-4

node-x

Globus deployment overview (4)

Reservation tool

Master

Globus

image

Frontal

griddeploy


Globus deployment overview 5

node-1

node-4

node-x

Globus deployment overview (5)

Reservation tool

Master

Globus

image

Frontal

griddeploy


Globus deployment overview 6

Globus deployment overview (6)

Reservation tool

slave

slave

slave

slave

slave

Master

slave

slave

user data

Frontal

slave

slave

slave

slave

slave

slave

slave

slave

slave

slave

slave

slave


Globus data transfer overview 1

Globus data transfer overview (1)

Reservation tool

slave

slave

slave

slave

rft –h node-11 –f transfer.xfr

slave

Master

slave

slave

user data

Frontal

slave

slave

slave

slave

slave

slave

slave

slave

slave

slave

slave

slave


Globus data transfer overview 2

Globus data transfer overview (2)

Reservation tool

slave

slave

slave

slave

user data

slave

Master

slave

slave

user data

user data

Frontal

slave

slave

user data

slave

user data

slave

slave

slave

slave

slave

user data

slave

slave

slave

slave

user data


Globus mutlitple job soumission overview 1

Reservation tool

slave

slave

slave

slave

user data

globusrun-ws -submit -J -S -f multi.rsl

slave

Master

slave

slave

user data

user data

Frontal

slave

slave

user data

slave

user data

slave

slave

slave

slave

slave

user data

slave

slave

slave

slave

user data

Globus (mutlitple) job soumission overview (1)


Globus mutlitple job soumission overview 2

Reservation tool

slave

slave

slave

slave

user data

globusrun-ws -submit -J -S -f multi.rsl

slave

Master

slave

slave

user data

user data

Frontal

slave

slave

user data

slave

user data

slave

slave

slave

slave

slave

user data

slave

slave

slave

slave

user data

Globus (mutlitple) job soumission overview (2)


N melab e g talbi

Plan

  • La boîte à outils Globus

  • La bibliothèque de communication MPICH-G2

  • Construction d’une organisation virtuelle Globus

  • Utilisation de ParadisEO-G pour le PSP


Roadmap to run the experiment interactive mode

RoadMap to run the experiment(interactive mode)

  • I. Prepare the Grid

    • Reserve nodes …oargridsub -q deploy -w 08:00:00 lille:nodes=10,bordeaux:nodes=10,sophia:nodes=20

    • … and store nodes in a file: oargridstat -l 1879 > mynodes

    • Deploy the globus Image on all sites with this command:griddeploy.sh mynodes globus4

    • Choose a master node (anyone), then transfer the file containing the list of nodes on the master scp mynodes root@<MASTER>:

    • … and finally log in as root on the master and run: # ./globus/install.sh mynodes

[OAR_GRIDSUB] Reservation success on lille : batchId = 1995, nbNodes = 10, weight = 0, properties = "", queue = deploy

[OAR_GRIDSUB] Reservation success on bordeaux : batchId = 14615, nbNodes = 10, weight = 0, properties = "", queue = deploy

[OAR_GRIDSUB] Reservation success on sophia : batchId = 146084, nbNodes = 20, weight = 0, properties = "", queue = deploy

[OAR_GRIDSUB] Grid reservation id = 1879


Roadmap to run the experiment interactive mode1

RoadMap to run the experiment(interactive mode)

  • II. Run the experiment

    • Transfert data to a globus node:

      scp –r frontale.lille.grid5000.fr:<your_data_dir> .

    • Dump a job description file (RSL):mpirun -dumprsl -np <processor_number> <my_prog> <my_arguments> > <my_prog>.rsl

    • cat <my_prog>.rsl | sed -e 's|(executable="\(.*\)")|(executable=$(GLOBUSRUN_GASS_URL)\1)|g' > test.rsl

  • In our example :

    mpirun -dumprsl -np 40 para_ga @tsp.param para_ga.rslcat para_ga.rsl | sed -e 's|(executable="\(.*\)") | (executable=$(GLOBUSRUN_GASS_URL)\1)|g' > test.rsl

    • The second line with sed substitutions is only necessary to stage in your data (including binary) if they are not present on each node (you can transfer it with RFT for instance).

      In batch mode, all this stuff is automatically done for you


N melab e g talbi

Plan

  • La boîte à outils Globus

  • La bibliothèque de communication MPICH-G2

  • Construction d’une organisation virtuelle Globus

  • Utilisation de ParadisEO-G pour le PSP


Deployment of paradiseo g4

Deployment of ParadisEO-G4

1. Reserve a pool of nodes

  • Lille, Nice-Sophia Antipolis, Lyon, Nancy, Rennes: 400CPUs

  • Non-preemtive reservation – no interference may occur; the processor are completely available during the reservation time.

CLUSTER A

2. Select a master node for the Globus GRID

3. Configure the Globus GRID (certificates, user credentials, xinetd, postgresql, etc.)

M6

M4

4. Deploy and execute – MPICH-G2

M5

CLUSTER C

CLUSTER B

M2

M2

M3

M3

GRID5000: A fully reconfigurable grid! The configuration phase relies on the deployment of pre-built Linux « images » having Globus and MPICH-G2 already installed.


  • Login