Evaluation des performances de programmes parallèles haut niveau à base de squelettes algorithmiques



Documents pareils
Evaluation des performances de programmes parallèles haut niveau à base de squelettes

Introduction à la Programmation Parallèle: MPI

Julien MATHEVET Alexandre BOISSY GSID 4. Rapport RE09. Load Balancing et migration

Parallélisme et Répartition

Rapport d activité. Mathieu Souchaud Juin 2007

CORBA haute performance

Communications collectives et ordonnancement en régime permanent pour plates-formes hétérogènes

Cours en ligne Développement Java pour le web

Mobile OGSI.NET: Grid Computing on Mobile Devices

Évaluation et implémentation des langages

Etude d Algorithmes Parallèles de Data Mining

24/11/2011. Cours EJB/J2EE Copyright Michel Buffa. Plan du cours. EJB : les fondamentaux. Enterprise Java Bean. Enterprise Java Bean.

Argument-fetching dataflow machine de G.R. Gao et J.B. Dennis (McGill, 1988) = machine dataflow sans flux de données

3. SPÉCIFICATIONS DU LOGICIEL. de l'expression des besoins à la conception. Spécifications fonctionnelles Analyse fonctionnelle et méthodes

Tests de SlipStream sur les plateformes et : vers la. Vers la fédération du Cloud computing

Resolution limit in community detection

IFIPS 5 / Nouvelles Architectures Logicielles Projet : Bus de web services avec «moteur» BPEL

Cours de Génie Logiciel

Algorithmique répartie

Principes. 2A-SI 3 Prog. réseau et systèmes distribués 3. 3 Programmation en CORBA. Programmation en Corba. Stéphane Vialle

Métriques de performance pour les algorithmes et programmes parallèles

Projet Active Object

Information utiles. webpage : Google+ : digiusto/

Retour d expérience en Astrophysique : utilisation du Cloud IaaS pour le traitement de données des missions spatiales

Processus! programme. DIMA, Systèmes Centralisés (Ph. Mauran) " Processus = suite d'actions = suite d'états obtenus = trace

Grandes lignes ASTRÉE. Logiciels critiques. Outils de certification classiques. Inspection manuelle. Definition. Test

IRL : Simulation distribuée pour les systèmes embarqués

Introduction à l informatique temps réel Pierre-Yves Duval (cppm)

Cours 1 : Qu est-ce que la programmation?

Ordonnancement temps réel

Simplifier l intégration des systèmes RH et garantir une version unique des données de l employé. D

Plan du cours. Autres modèles pour les applications réparties Introduction. Mode de travail. Introduction

Prototype de canal caché dans le DNS

Contributions à l expérimentation sur les systèmes distribués de grande taille

Rational Unified Process

Initiation au HPC - Généralités

Introduction aux systèmes temps réel. Iulian Ober IRIT

Modèles à Événements Discrets. Réseaux de Petri Stochastiques

Solutions de stockage réseau

données en connaissance et en actions?

Programmation parallèle et distribuée

Projet d informatique M1BI : Compression et décompression de texte. 1 Généralités sur la compression/décompression de texte

Architecture d'entreprise : Guide Pratique de l'architecture Logique

Les structures de données. Rajae El Ouazzani

Cours 1 : La compilation

Surveiller et contrôler vos applications à travers le Web

WEA Un Gérant d'objets Persistants pour des environnements distribués

Gestionnaire de réseaux Linux et Windows

Formula Negator, Outil de négation de formule.

Algorithmes de Transmission et de Recherche de l Information dans les Réseaux de Communication. Philippe Robert INRIA Paris-Rocquencourt

Résumé CONCEPTEUR, INTEGRATEUR, OPERATEUR DE SYSTEMES CRITIQUES

Systèmes et Réseaux (ASR 2) - Notes de cours Cours 14

VIII- Circuits séquentiels. Mémoires

Formats d images. 1 Introduction

M2-Images. Rendu Temps Réel - OpenGL 4 et compute shaders. J.C. Iehl. December 18, 2013


Chapitre VI- La validation de la composition.

Network musical jammin

Patrons de Conception (Design Patterns)

Conception des systèmes répartis

MODELISATION UN ATELIER DE MODELISATION «RATIONAL ROSE»

Architecture distribuée

TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile

Audit activité base Oracle / SAP

Eléments de spécification des systèmes temps réel Pierre-Yves Duval (cppm)

Quantification d incertitude et Tendances en HPC

Les diagrammes de modélisation

Outils logiciels pour la combinaison de vérification fonctionnelle et d évaluation de performances au sein de CADP

Projet de Veille Technologique

Suivant les langages de programmation, modules plus avancés : modules imbriqués modules paramétrés par des modules (foncteurs)

Francis BISSON ( ) Kenny CÔTÉ ( ) Pierre-Luc ROGER ( ) IFT702 Planification en intelligence artificielle

Arbres binaires de recherche

//////////////////////////////////////////////////////////////////// Administration bases de données

Vérifier la qualité de vos applications logicielle de manière continue

Grid5000 aujourd'hui : Architecture & utilisation

Fiche n 14 : Import / Export avec PlanningPME

Runtime. Gestion de la réactivité des communications réseau. François Trahay Runtime, LaBRI sous la direction d'alexandre Denis Université Bordeaux I

UE Programmation Impérative Licence 2ème Année

Compte Rendu d intégration d application

11 Février 2014 Paris nidays.fr. france.ni.com

Machines virtuelles Cours 1 : Introduction

Gé nié Logiciél Livré Blanc

Quelques éléments de compilation en C et makefiles

Reconstruction de bâtiments en 3D à partir de nuages de points LIDAR

Semarchy Convergence for MDM La Plate-Forme MDM Évolutionnaire

Synthèse d'images I. Venceslas BIRI IGM Université de Marne La

Modélisation des interfaces matériel/logiciel

SECTION 5 BANQUE DE PROJETS

TP1 : Initiation à Java et Eclipse

Mathématique et Automatique : de la boucle ouverte à la boucle fermée. Maïtine bergounioux Laboratoire MAPMO - UMR 6628 Université d'orléans

Vers du matériel libre

NFP111 Systèmes et Applications Réparties

Table des matières PRESENTATION DU LANGAGE DS2 ET DE SES APPLICATIONS. Introduction

Temps Réel. Jérôme Pouiller Septembre 2011

Gestion de clusters de calcul avec Rocks

DG-ADAJ: Une plateforme Desktop Grid

Master MIDO 2ème année. Spécification et Conception en UML Maude Manouvrier

Objectif. Participant. Prérequis. Oracle BI Suite EE 10g R3 - Développer des référentiels. 5 Jours [35 Heures]

Les Autorisations de Mise sur le Marché (AMM) délivrées au titre du Règlement (UE) n 528/2012 (dit BPR)

Sage CRM. Customer Relationship Management (CRM) pour petites et moyennes entreprises

Transcription:

Evaluation des performances de programmes parallèles haut niveau à base de squelettes algorithmiques (bourse EPSRC numéro GR/S21717/01) Enhancing the Perf. Predictability of Grid Appli. with Patterns and Process Algebras A. Benoit, M. Cole, S. Gilmore, J. Hillston http://homepages.inf.ed.ac.uk/abenoit1/ abenoit1@inf.ed.ac.uk Séminaire au LACL, Paris 12 7 mars 2005 1

Introduction - Contexte Programmes parallèles dans un contexte hétérogène tournent sur un ensemble distribués d ordinateurs dispo. et perf. des ressources imprévisible problèmes de scheduling/rescheduling Programmation parallèle haut-niveau bibliothèque de squelettes (schémas parallèles) de nombreuses appli. utilisent ces squelettes modularité simplicité d utilisation Edinburgh Skeleton Library eskel (MPI) [Cole02] abenoit1@inf.ed.ac.uk Séminaire au LACL, Paris 12 7 mars 2005 2

Introduction - Evaluation des performances Utilisation d un squelette donné: information sur les dépendances impliquées Modélisation à l aide d algèbres de processus stochastiques inclut les aspects d incertitude propre aux grilles prise en compte dynamique des performances des ressources, processus de modélisation auto. permet de meilleures décisions de scheduling, et un éventuel rescheduling des applications Amélioration des performances des programmes parallèles abenoit1@inf.ed.ac.uk Séminaire au LACL, Paris 12 7 mars 2005 3

Plan de l exposé La bibliothèque de squelettes eskel et comparaison avec d autres approches Motivation et concepts généraux Les squelettes de eskel Utilisation de eskel Modèles de performance de squelettes Le modèle du Pipeline AMoGeT (Automatic Model Generation Tool) Résultats numériques Conclusions et perspectives abenoit1@inf.ed.ac.uk Séminaire au LACL, Paris 12 7 mars 2005 4

eskel - Historique Concept de squelettes algorithmiques largement motivé dans la littérature eskel Murray Cole, 2002 Bibliothèque de fonctions C, basée sur MPI Adresse les problèmes soulevés par la programmation à base de squelettes abenoit1@inf.ed.ac.uk Séminaire au LACL, Paris 12 7 mars 2005 5

eskel - Historique eskel 2 Murray Cole et Anne Benoit, 2004-2005 Nouvelle interface et implémentation Plus de concepts adressés pour plus de flexibilité http://homepages.inf.ed.ac.uk/abenoit1/eskel abenoit1@inf.ed.ac.uk Séminaire au LACL, Paris 12 7 mars 2005 6

eskel - Concepts fondamentaux Mode de composition (nesting) définit comment composer plusieurs squelettes Mode d interaction définit les interactions entre les différentes parties d un même squelette, et entre différents squelettes Mode de données lié aux autres concepts, définit comment les données sont prises en charge Comment nous adressons ces concepts (eskel)? Et comparaison avec d autres approches abenoit1@inf.ed.ac.uk Séminaire au LACL, Paris 12 7 mars 2005 7

eskel - Mode de composition Peut être transitoire or persistant Composition transitoire (transient nesting) une activité invoque un squelette ce squelette contient ou crée ses propres données Composition persistante (persistent nesting) le squelette est invoqué une fois il récupère les données directement depuis le squelette père (qui l a créé) Lié au mode de données (détaillé plus tard) abenoit1@inf.ed.ac.uk Séminaire au LACL, Paris 12 7 mars 2005 8

eskel - Mode de composition: arbre des appels Un arbre des appels est construit lors de la première interaction Représente la structure des squelettes composés de façon persistante recherche dans l arbre pour trouver les partenaires d interaction Squelettes composés transitoirement n apparaissent pas dans l arbre principal créés dynamiquement, durée de vie limitée sous-arbre créé dynamiquement à l invocation abenoit1@inf.ed.ac.uk Séminaire au LACL, Paris 12 7 mars 2005 9

eskel - Mode de composition dans P3L P3L (Anacleto, SkIE) toutes les compositions sont persistantes définies dans la couche P3L clairement séparées du code séquentiel définissant les activités Bibliothèques P3L (Lithium, SKElib) concept de composition transitoire : pas adressé explicitement pas interdit mais pas supporté ASSIST: pas de composition dans ce sens abenoit1@inf.ed.ac.uk Séminaire au LACL, Paris 12 7 mars 2005 10

eskel - Mode d interaction Implicite une activité n a pas de contrôle sur ses interactions fonction prenant une donnée en entrée et retournant une donnée Explicite interactions déclenchées dans le code de l activité appels aux fonctions génériques Take et Give Mode dévoué (devolved) pour les squelettes composés: un squelette père peut utiliser le mode d interaction du squelette fils composé abenoit1@inf.ed.ac.uk Séminaire au LACL, Paris 12 7 mars 2005 11

eskel - Mode d interaction dans P3L P3L et les bibliothèques liées interactions à travers un flot de données défini implicitement par le squelette ASSIST plus de flexibilité interactions implicites ou explicites possibles abenoit1@inf.ed.ac.uk Séminaire au LACL, Paris 12 7 mars 2005 12

eskel - Mode de données Lié aux concepts précédents Modes Buffer / Flux (Stream) BUF: données dans un buffer (composition transitoire) STRM: les données arrivent dans le squelette directement depuis les activités d un squelette père (composition persistante) eskel Data Model edm sémantique des interactions unité de transfert : molecule edm abenoit1@inf.ed.ac.uk Séminaire au LACL, Paris 12 7 mars 2005 13

eskel - eskel Data Model molecule edm: collection d atomes edm Type: defini à l aide des types MPI standards atome edm: diffusion locale ou globale P0 Diffusion locale : 3 objets distinctifs P1 P2 Diffusion globale : 1 objet abenoit1@inf.ed.ac.uk Séminaire au LACL, Paris 12 7 mars 2005 14

eskel - Squelettes: brève description Pipeline & Farm: squelettes classiques, définis de façon générique Deal: similaire à Farm, sauf que les tâches sont distribuées de façon cyclique aux travailleurs HaloSwap: tableau 1-D d activités qui, successivement, (1) échangent des données avec le voisin immédiat, (2) traitent les données locallement, (3) décident collectivement si l on doit procéder à une nouvelle itération Butterfly: classe d algorithmes diviser pour régner abenoit1@inf.ed.ac.uk Séminaire au LACL, Paris 12 7 mars 2005 15

eskel - Squelettes: parallélisme tâches/données Les squelettes sont classifiés en : parallélisme de tâche: comm. dynamique entre processus pour distribuer le travail pipeline, farm parallélisme de données: travail sur une structure de données distribuée map, fold squelettes de contrôle: modules séquentiels et itération de squelettes seq, loop eskel: seulement squelettes pour le paral. de tâches parallélisme de données: utilisation de edm contrôle exprimé directement dans le code C/MPI abenoit1@inf.ed.ac.uk Séminaire au LACL, Paris 12 7 mars 2005 16

eskel - Squelettes: interface eskel: P3L: interface pas évidente basé sur MPI, l utilisateur doit connaître MPI structuration de code MPI parallèle plus facile à utiliser, structure simple moins de flexibilité, structuration de code séquentiel paral. de tâches/données et squelettes de contrôle pipeline 3-étapes: (crée données, traite, collecte résultats) abenoit1@inf.ed.ac.uk Séminaire au LACL, Paris 12 7 mars 2005 17

eskel - Interface: Pipeline void Pipeline (int ns, Imode t imode[], eskel molecule t * (*stages[])(eskel molecule t *), int col, Dmode t dmode, spread t spr[], MPI Datatype ty[], void *in, int inlen, int inmul, void *out, int outlen, int *outmul, int outbuffsz, MPI Comm comm); information générale sur le pipeline (ns,...) précise les modes: mode d interaction (imode); mode de données (dmode), spread (spr) et type (ty) information relative au buffer d entrées information relative au buffer de sorties abenoit1@inf.ed.ac.uk Séminaire au LACL, Paris 12 7 mars 2005 18

eskel - Interface: Deal void Deal (int nw, Imode t imode, eskel molecule t *worker (eskel molecule t *), int col, Dmode t dmode, void *in, int inlen, int inmul, spread t inspr, MPI Datatype inty, void *out, int outlen, int *outmul, spread t outspr, MPI Datatype outty, int outbuffsz, MPI Comm comm); information générale sur le deal (nw,...) précise les modes: mode d interaction (imode) et mode de données (dmode) information relative au buffer d entrées information relative au buffer de sorties abenoit1@inf.ed.ac.uk Séminaire au LACL, Paris 12 7 mars 2005 19

eskel - Utilisation de la bibliothèque Programme C/MPI appelant les fonctions squelettes Besoin de faire attention aux paramètres Définition des squelettes composés, des travailleurs,... à l aide de fonctions C/MPI standards Seuls Pipeline et Deal sont implémentés pour l instant dans eskel2-0.1 abenoit1@inf.ed.ac.uk Séminaire au LACL, Paris 12 7 mars 2005 20

eskel - Utilisation de la bibliothèque - bicephale.univ-paris12.fr Installation d une implémentation MPI thread-safe Los Alamos MPI http://public.lanl.gov/lampi Installation des exécutables et librairies Installation et test de eskel http://homepages.inf.ed.ac.uk/abenoit1/eskel récupération de la dernière version lancement à l aide d une commande du style mpirun -ssh -threads -H host1,host2,host3 -np 3,5,2./exemple abenoit1@inf.ed.ac.uk Séminaire au LACL, Paris 12 7 mars 2005 21

Plan de l exposé La bibliothèque de squelettes eskel Motivation et concepts généraux Les squelettes de eskel Utilisation de eskel Modèles de performance de squelettes Le modèle du Pipeline AMoGeT (Automatic Model Generation Tool) Résultats numériques Conclusions et perspectives abenoit1@inf.ed.ac.uk Séminaire au LACL, Paris 12 7 mars 2005 22

Pipeline - Principe du squelette entrées Etape 1 Etape 2... Etape Ne sorties étapes travaillent sur une séquence d entrées (inputs) pour créer une séquence de sorties (outputs) Toutes les données passent à travers chaque étape dans le même ordre L activité interne d une étape peut être parallèle, mais ceci est transparent à notre modèle abenoit1@inf.ed.ac.uk Séminaire au LACL, Paris 12 7 mars 2005 23

Pipeline - Modèle Le modèle est exprimé à l aide d algèbres de processus pour l évaluation des performances (Performance Evaluation Process Algebra) PEPA [Hillston96] Mapping de l application sur les ressources informatiques: le réseau et les processeurs abenoit1@inf.ed.ac.uk Séminaire au LACL, Paris 12 7 mars 2005 24

#"! $ ;:9 ;:9 Pipeline - Modèle de l application Modèle de l application: indépendant des ressources 1 composant PEPA par étape du Pipeline ( def ) Séquentiel: obtient une donnée ( ), la traite ( ), % $ %'&( transmet le résultat à l étape suivante ( ) * #"! $) Taux non spécifiés ( ): déterminés par les ressources Pipeline = coopération des différentes étapes 4 2108 / 4 2107 65 / 4 2103 /,.- + def : arrivée d une donnée dans l application < : transfert d un résultat hors du Pipeline < abenoit1@inf.ed.ac.uk Séminaire au LACL, Paris 12 7 mars 2005 25

C? H Pipeline - Modèle du réseau Modèle du réseau: information sur l efficacité des connections réseau entre couples de processeurs Affecte les taux @AB Cdef aux activités = @AB = (? ) >? > C @AB = représente la connection entre le proc. D l étape K HJI et le proc. hébergeant l étape E hébergeant E GF Cas limites: est le processeur fournissant les données au Pipeline EML E est là où l on désire transmettre les résultats abenoit1@inf.ed.ac.uk Séminaire au LACL, Paris 12 7 mars 2005 26

Q N? TT BBR Pipeline - Modèle des processeurs Modèle des processeurs: L application tourne sur un ensemble de Taux de l activité O N processeurs ( > P ): charge du processeur, et autres indices de performance Une étape par processeur ( def + R O + R N ): > Plusieurs étapes par processeur: def + R R + O S5 + O5 R Ensemble de processeurs: composition parallèle + BCdef RVU + TTTT + R5 R + abenoit1@inf.ed.ac.uk Séminaire au LACL, Paris 12 7 mars 2005 27

h h w y x Pipeline - Modèle final Le modèle final est le mapping des étapes sur les processeurs et le réseau, en utilisant l opérateur de coopération synchronise `\.a_ \^ `\.a_ []\.^ Z WYX egf c bgcddd n ^o ann aml ^ et j`gka `Gia synchronise bu etf asl q c bgcddd asl [rq Z W p o_ an a et j`gka `Gia n ^o ann aml ^ j` ka ` ia vdef ` k ii ow an a Z abenoit1@inf.ed.ac.uk Séminaire au LACL, Paris 12 7 mars 2005 28

AMoGeT - Vue générale AMoGeT Generation des modèles modèles PEPA PEPA Workbench résultats Comparaison des résultats fichiers d entrée information de NWS indices de performance AMoGeT: Automatic Model Generation Tool Composant d analyse générique Rôle ultime: composant intégré à un scheduleur et rescheduleur temps réel abenoit1@inf.ed.ac.uk Séminaire au LACL, Paris 12 7 mars 2005 29

> AMoGeT - Fichiers d entrée (1) Préciser les noms des processeurs fichier hosts.txt: liste des adresses IP rang dans la liste processeur le processeur est le processeur de référence wellogy.inf.ed.ac.uk bw240n01.inf.ed.ac.uk bw240n02.inf.ed.ac.uk bicephale.univ-paris12.fr abenoit1@inf.ed.ac.uk Séminaire au LACL, Paris 12 7 mars 2005 30

AMoGeT - Fichiers d entrée (2) Décrit l application exemple fichier exemple.des étapes du Pipeline: nombre d étapes et temps (sec) requis pour produire une sortie pour chaque étape référence nbetape= > sur le processeur de ; tr1=10; tr2=2;... mappings des étapes sur les processeurs: location des entrées, le processeur hébergeant chaque étape, et la location des sorties. mappings=[1,(1,2,3),1],[1,(1,1,1),1]; abenoit1@inf.ed.ac.uk Séminaire au LACL, Paris 12 7 mars 2005 31

R AMoGeT - Utilisation du Network Weather Service The Network Weather Service (NWS) [Wolski99] Prédiction dynamique des performances du réseau et des ressources Quelques scripts à lancer sur les noeuds étudiés Information que l on utilise: - fraction de CPU disponible pour une tâche qui commence sur le processeur {, z- latence (en ms) d une communication du processeur vers le processeur - fréquence du processeur C en MHz (/proc/cpuinfo) abenoit1@inf.ed.ac.uk Séminaire au LACL, Paris 12 7 mars 2005 32

- R ~ ~ R - AMoGeT - Génération des modèles Un modèle de Pipeline par mapping Problème: calcul des taux Etape de ( } { > ) sur le processeur étapes sur ce processeur): (et un total > C{ C { O } { Taux ( processeur processeur >? > = (limites: étape GF ): lien réseau entre le hébergeant l étape (étape ): et le > {$*z {$ ƒ, > = P = entrée et étape >? = sortie) abenoit1@inf.ed.ac.uk Séminaire au LACL, Paris 12 7 mars 2005 33

AMoGeT - Résolution des modèles et comparaison des résultats Résultats numériques obtenus à l aide du PEPA Workbench [Gilmore94] Résultat de performance: débit des activités débit de l application = Résultat obtenu par une simple ligne de commande, tous les résultats sont sauvés dans un même fichier Quel mapping produit le meilleur débit? Utiliser ce mapping pour faire tourner l application abenoit1@inf.ed.ac.uk Séminaire au LACL, Paris 12 7 mars 2005 34

K E Résultats numériques Exemple 1: Pipeline 3-étapes, jusqu à 3 processeurs 27 états, 51 transitions moins d une sec. pour résoudre latence des com KˆˆˆŠ sec; tous processeurs/étapes sont identiques; temps requis pour compléter une étape: Œ ( { Ž : nb d étapes sur le proc { ) Mappings comparés: tous les mappings avec l étape 1 sur le proc 1 (mappings ) KˆŠ : mappings optimaux (1,2,3) et (1,3,2) avec un KŠ KŠ débit de 5.64 ˆŠ : mêmes mappings optimaux (1 étape sur chaque proc), mais débit divisé par 2 (2.82) abenoit1@inf.ed.ac.uk Séminaire au LACL, Paris 12 7 mars 2005 35

ˆK Résultats numériques Exemple 2: Pipeline 4-étapes, jusqu à 4 proc, 0.06 0.05 Mappings: (1,1,1,1) (1,1,2,2) (1,1,2,3) (1,2,3,4) 0.04 Débit 0.03 0.02 0.01 0 0 10 20 30 40 50 Latence (secondes) abenoit1@inf.ed.ac.uk Séminaire au LACL, Paris 12 7 mars 2005 36

Plan de l exposé La bibliothèque de squelettes eskel Motivation et concepts généraux Les squelettes de eskel Utilisation de eskel Modèles de performance de squelettes Le modèle du Pipeline AMoGeT (Automatic Model Generation Tool) Résultats numériques Conclusions et perspectives abenoit1@inf.ed.ac.uk Séminaire au LACL, Paris 12 7 mars 2005 37

Conclusions - Partie 1 Pourquoi utiliser un modèle de programmation parallèle structurée? (exposé de Murray Cole à EuroPar 2004,...) Présentation de la bibliothèque eskel Concepts à la base de la bibliothèque Comment nous adressons ces concepts Comparaison avec le langage P3L et ses concepts abenoit1@inf.ed.ac.uk Séminaire au LACL, Paris 12 7 mars 2005 38

Perspectives - Partie 1 (1) eskel: développement en cours Encore plusieurs squelettes à implémenter L interface peut être simplifiée et plus facile à utiliser Utilité d un mode déboguage pour aider l écriture d applications (vérifier si les définitions du code application sont correctes, la cohérence entre les différents modes,...) Éventuelle démo abenoit1@inf.ed.ac.uk Séminaire au LACL, Paris 12 7 mars 2005 39

Perspectives - Partie 1 (2) Validation de ces concepts Développer une vraie application avec eskel Promouvoir le concept de squelettes Comparaison avec d autres approches P3L, ASSIST,... Bibliothèque de squelettes de Kuchen Langage fonctionnel parallèle Eden abenoit1@inf.ed.ac.uk Séminaire au LACL, Paris 12 7 mars 2005 40

Conclusions - Partie 2 Utilisation de squelettes et de modèles de performance pour améliorer les performances de programmes parallèles haut-niveau squelettes Pipeline et Deal Outil AMoGeT: permet d automatiser le processus pour obtenir facilement des résultats Modèles: permettent de choisir le mapping qui produit le meilleur débit pour l application Utilisation du Network Weather Service pour obtenir des modèles réalistes abenoit1@inf.ed.ac.uk Séminaire au LACL, Paris 12 7 mars 2005 41

š Perspectives - Partie 2 Fournir des détails sur le temps requis par AMoGeT pour conforter son utilité Etendre le travail à d autres squelettes Expériences sur une application réelle sur une vraie grille de calcul hétérogène Intégrer le tout dans une interface graphique pour aider la conception d applications avec eskel Premier cas d étude on a le potentiel pour améliorer les performances de programmes parallèles haut-niveau en utilisant des squelettes et des algèbres de processus abenoit1@inf.ed.ac.uk Séminaire au LACL, Paris 12 7 mars 2005 42

Merci pour votre attention! Des questions? abenoit1@inf.ed.ac.uk Séminaire au LACL, Paris 12 7 mars 2005 43