Sélection de pairs et allocation de tâches dans P2P-MPI

Dimension: px
Commencer à balayer dès la page:

Download "Sélection de pairs et allocation de tâches dans P2P-MPI"

Transcription

1 Mémoire Master 2 IFA Université Louis-Pasteur Strasbourg Sélection pairs et allocation tâches P2P-MPI Ghazi Bouabene Master 2 IFA 2005/2006 boratoire : Image et Calcul Parallèle Scientique Stage encadré par Stéphane Genaud

2 2

3 Remerciements leur Je soutien remercie quotidien. tout d'abord mes frères, Anis et Karim ainsi que Victoria pour drant Un et grand son soutien merci à Stéphane candidatures Genaud pour ses thèses. qualités bienveilntes d'enca- une"spéciale Enn merci dédicace" à tous pour membres basket-team. l'icps pour leur acceuil chaleureux, avec 3

4 4

5 Table s matières 1 Introduction Modèreprésentationsapplicationsparallè Notreproblème Approchespourrésoudreleproblèmed'allocation OrdonnancementDAG AllocationSTG Cas s ressources homogènes et graphe d'application régulier Cas s. ressources homogènes et.. graphe.... d'application irrégulier Casressourceshétérogènesetgrapherégulier Casressourceshétérogènesetgrapheirrégulier Autresheuristiquesintéressantes P2P-MPI API Middleware Mécanismes découverte s pairs et allocation P2P-MPI Recherche noeuds pour exécuter une application P2P Illustrationduproblème MPI Conventionsreprésentationsgraphes Cadre Etuducomportementl'application Constructionstraces Découvertesliensfortsentretâches Objectif Algorithmegroupementstâches Complexitél'algorithme Exempgroupements Découvertesclustersmachines État l'art 11 3 Proposition d'une métho d'allocation 25

6 6 TABLE DES MATIÈRES Objectif Représentationsinterconnexionsshôtes Algorithmegroupementsprocesseurs Complexité l'algortihme groupement s processeurs Limites Algorithmed'allocation Complexité l'algorithme d'allocation s groupes tâches Conclusion auxclusters Notregrilletests Applicationstypes Résultats Applicationàbarrièressynchronisation Applicationtypemaître-escve Applicationtypediviandconquer Exemp Validation 51 5 Conclusion 59

7 Table s gures 2.1 GrapheSTG T 1 et T 2,Graphed'interactionentre T 1 et T 2.2 GrapheDAGrésultant ungraphettig Exempleclusterisation Arbreclusterisation Exempled'applicationmaitreescve Grille5processeurs ExempleavecuneapplicationenAnneau Exempleavecuneapplicationirrégulière Exempled'uncasdéfavorableclusterisation Exempledivisiongroupe réguritél'agglomération Matriced'adjacencestaches Allocationl'applicationàbarrières Matrice d'adjacence s taches l'application maître-escve applicationdiviandconquer

8 8 TABLE DES FIGURES

9 Chapitre 1 Introduction technologies L'évolution réseau constante ont fait s émerger architectures le concept s ordinateurs ainsi que celle s Grille il vient désormais possible fédérer ressources plusieurs calcul. machines En eet bureauand'atteindrescapacitéscalculrivalisantaveccelssupercalcuteurs l'intermédiaire ou encore d'un cel middleware(intergiciel) s clusters. Ces gril qui sont a pour souvent rôle d'orir construites s services par le transfert au niveau chiers, système le aux ncement utilisateurs tâches tels que à distance, découverte etc. s ressources, ware Dans développé ce cadre pendant on trouve thèse s projets M. Choopan originaux Rattanapoka tel P2P-MPI[10], sous un direction middle- dont M. Stéphane gestion est Genaud. totalement P2P-MPI distribuée permet selon un construire mo pair-à-pair. une grille Les calcul participantàgrilleonttousunstatutd'égalàégaletpeuventbénéciers pairs ressources Cependant,vulegrandnombredésàreleverand'obtenirunintergiciel disponib ainsi que mettre leurs à disposition. plète, grille le problème able, robuste d'une aux allocation erreurs optimale et orant s une tâches API sur programmation machines formant com- plus grille dicile n'a pas par encore l'hétérogénéité pu être traité. s ressources. D'autant plus En eet que ce problème machines est formant rendu une férents grille organismes P2P-MPI (utilisateurs sont géographiquement privés, universités, distribuées entreprises et sous l'autorité.. ). Cette grille dif- est d'interconnexion. donc formée machines à architectures diérentes avec diérents débits dicilel'allocationstâchesd'uneapplicationparallèleauxressourcesd'une Nous allons donc le cadre ce mémoire nous intéresser au problème grille sier hétérogène. diérentes Pour approches ce nous proposées allons un premier littérature temps pour étudier traiter et cs- problème. Nousproposeronsensuiteune métho d'allocation quenouspensons ce adaptéeàgrillep2p-mpi,quenousvalironsennparsexpérimentations sur lè. s applications types i.e s applications fréquentes calculs paral- 9

10 10 CHAPITRE 1. INTRODUCTION

11 Chapitre 2 État l'art L'allocation menttraitélittérature,ceciétantcertainementdûàl'aspect tâches sur un ensemble ressources est un problème rge- NP-complet du cher problème. une allocation En eet optimale plusieures heuristiques diérents cas ont problématiques. été développées an d'appro- possible Le problème tâches (processus) le cadre d'une ce mémoire application est MPI d'allouer sur un le plus ensemble ecacement cesseurs formant une grille calcul. Les applications MPI sont du type SPMD pro- (Single méro du Process processus Multiple est exécuté. Data-stream) Le numéro où un d'un même processus co paramétré MPI est appelé par le son nu- rang.lesprocessusd'uneapplicationmpidémarrentenmêmetempsetpeuvent communiquerparenvoimessage,etceàtoutmomentpendantleurexécution. Le l'application. but recherche Nous allons d'une voir allocation ce chapitre est minimiser une énumération le temps s d'exécution principa techniques Une taxonomie développées s qui travaux s'approchent déjà eectués notre problème. permettra déterminer une ligne directrice pour notre le domaine travail recherche. l'allocation 2.1 Modè représentation s applications parallè d'allocation On trouve prenant en littérature entrée ux principalement modè diérents ux catégories représentation méthos applications parallè. Ces modè représentation sont: s Les DAG : cence Graph), Un est DAG un graphe (Direct Acyclic Graph), aussi appelé TPG (Task Pre- G = (N, E) où N représentant s tâches. Une tâche est une suite est calcul un ensemble i.e une séquence noeuds d'instructions ne contenant aucune primitive communication. Chaque noeud n i N est pondéré par complexité calcul w(n i ) sente. tâche qu'il repré- E est l'ensemble s arcs représentant s dépendances données (ou 11

12 12 CHAPITRE 2. ÉTAT DE L'ART communications) entre tâches. Une communication entre ux tâches n i et n estnotée: j e i,j : n i n j Chaquearc e i,j estpondéréparlevolumedonnéestransférées n i vers n Les communications, suivant le modèle DAG, ne peuvent être eectuées j. qu'au début et à n s tâches. En eet un arc e 1,2 partant d'un noeud n 1 versunautre n 2 signieterminaison n 1 avantlecommencement n Lesarcsrepésententainsiunecontrainteprécénce(dépendancetemporelle) 2. entretâches.[23],[14],[20] Les STG : Graph)estungraphe Un STG(Static Task Graph), aussi appelé TIG(Task Interaction G = (N, s tâches. Chaque noeud E)oùNestunensemblenoeudsreprésentant n i est pondéré par complexité calcul w(n i ) tâche qu'il représente. E tions inter-tâches sans donner est d'indication l'ensemble s temporelle arcs représentant sur ces communications. s communica- Pour ux noeuds n i et n j, un arc noté e i,j joignant n i à n plusieurescommunicationsentre j représente une ou n i et n j. e i,j estpondéréparlevolumetotalsdonnéestransféréesentre n i et n ux sens. j type A diérence n-début, du i.e DAG une communication communications n'induisent pas une dépendance n 1 à n terminaison 2 n'oblige pas à attendre n 1 pourcommencer n doncpasspéciéescemodèlegraphe:uxtâchesliéesparunarc 2.Lesdépendancestemporelnesont un STGestdoncadéquatpourapplicationsparallètypeSPMD,oùl'ona STG peuvent être exécutées simultanément. Le modèle représentation une tâche unique qui démarre simultanément [15]. sur plusieurs processeurs.[5],[9], 2.2 Notre problème Toutd'abord,itimportantcrierdiérenceentre ordonnancement et allocation. L'ordonnacement est recherche où et quand tâche en vue d'améliorer un critère performance, comme durée exécuter d'exécution une totale pcementstâchessurprocesseursquimaximiseuncritèreperformance l'application par exemple. L'allocation se limite quant à elle trouver le (doncle où ser parallélisation uniquement).danslecadrecemémoirenouscherchonsàoptimi- peuvent démarrer simultanément d'une application et communiquer MPI. Les tâches tout au d'une long telle application tion. Comme il n'y a pas dépendances temporel entre tâches, leur exécu- travail d'optimisation se résume donc trouver le meilleur pcement s tâches notre sur du problème processeurs. d'allocation On a donc ux aaire cas à gure un problème se présentent: d'allocation. Dans le cadre Le nombre processeurs est inférieur au nombre tâches Danscecasonretombeleproblèmel'ordonnancementcarondoit

13 2.3. APPROCHES POUR RÉSOUDRE LE PROBLÈME D'ALLOCATION13 prendre s tâches, en notamment compte pour facteurs éviter temps s situations et précénce blocage. lors Par l'allocation le cas où l'on n'assigne qu'une tâche par processeur, s tâches exemple occupenttousprocesseurspeuventresterindénémentenattented'une qui communicationpartd'unetâchenonallouée(etquinepourrajamais l'être). Le nombre processeurs est supérieur au nombre tâches cas est le plus probable le contexte ce mémoire puisqu'on dispose Ce Le d'une problème grille calcul l'allocation ayant un est grand donc nombre un cas particulier processeurs. celui l'ordonnancement, mais meure cependant NP-Complet[13]. (sous-problème) prochechoisiececaspourobtenirsallocationssatisfaisantesenuntemps L'ap- polynomial suivante, cssier est d'utiliser et détailler s méthos quelques heuristiques. heuristiques Nous d'allocations. allons, section 2.3 Approches pour résoudre le problème d'allocation Ordonnancement DAG nancer Beaucoup tâches d'heuristiques d'un DAG ont été manière développées presque optimale, littérature [4], [21], pour [7], ordon- Cette gran variété solutions, ne peut malheureusement pas être directementadoptéenotrecas,oùl'onalloueprocessusd'uneapplicationmpi. [12]. En cénce eet, puisqu'el tâches d'une commencent application toutes MPI en n'ont même pas temps. retion De ce stricte fait el sont pré- modélisées Une solution un possible STG. fomerlegraphestgenungraphedag.cecipeutêtreréaliséenpartitionnant pour pouvoir proter ces méthos serait trans- chaquetâche(noeud)dustgensesphasescalculcomprisesentreuxprimitives à leurs début communications. et n et donc On une obtient représentation ainsi s sous-tâches l'application inter-dépendantes modèle DAG. Prenons par exemple ux tâches conforme au T 1 et T graphestgfig représentées le La tâche T 1 se décompose en trois phases calcul brut (ne contenant pas communications):a 1, A 2 et A 3. T 2 sedécompose en B 1 et B détailléesuxtâchesestmontréefig L'exécution modéliséelestgentre En considérant phases calcul brut, on peut transformer l'intéraction T 1 et T précénceentre 2 enundagreprésentantscontraintes A 1, A 2, A 3, B 1 et B cette solution est loin d'être pratique 2 car:.lafig.2.2donnecedag. Cependant elle donne s graphes très gran taille ment complexité l'allocation, et donc le :cequiaugmentegran- calculer. temps nécessaire à

14 14 CHAPITRE 2. ÉTAT DE L'ART T T1 B1 B A1 A2 A3 T2 T1 Fig. 2.1GrapheSTG T 1 et T 2,Graphed'interactionentre T 1 et T 2 10 A1 10 B A2 15 B A3 Fig. 2.2 Graphe DAG résultant elle introduit une forte contrainte cohérence s'assurer que sous-tâches d'un même processus MPI soient : en eet pcées on doit lemêmeprocesseuranmaintenircohérencesdonnéesetduprogramme. sur vuespourlemodèledag. Ceci inhibe granment le fonctionnement s heuristiques pré Allocation STG quant Les à techniques el moins et nombreuses heuristiques concernant littérature. l'ordonnacement d'un STG sont El peuvent être cssiées selon ux critères principaux: La nature s ressources cib : Par exemple le cas d'un unique cluster qui peuvent avec s être machines soit homogènes; intiques; ou et liens hétérogènes sieures architectures machines le et cas s d'une connexions grappe inter-cluster cluster avec à débits plu- variab. Le graphe modélisant l'application : à dire pouvant être construit en répétant qui itérativement peut être soit un régulier; sous-graphe c'est qu'on appelle motif ses noeuds. ; ou irrégulier, avec s connexions arbitraires entre Latabuivanteindiquecssicationsméthosd'allocationsquel'on

15 2.3. APPROCHES POUR RÉSOUDRE LE PROBLÈME D'ALLOCATION15 va décrire. graphe régulier ressources OREGAMI[17] homogènes ressources PROPHET[24] hétérogènes graphe irrégulier TTIG[22] Bowen, Ghafoor[6] Cas s ressources homogènes et graphe d'application régulier GAMI, Dans[17]auteursdénissentunoutild'allocationtâchesnomméOREtectures allouant parallè. s applications parallè à passage messages sur s archi- structurel'applicationparallèleainsiquearchitecturescib. OREGAMI traite le problème l'allocation en exploitant s régurités Lesauteurssebasentsurl'hypothèsequebeaucoupd'applicationsparallèsont caractérisées tème parallèle par cible s est motifs régulière communication c'est-à-dire formée réguliers. processeurs L'architecture homogènes du sys- connectés L'allocation par une OREGAMI topologie est réseau faite en régulière trois étapes: (hypercube, mesh, Bruijn). contraction s tâches en un graphe plus petit, le cas où le nombre tâches du dépasse graphe celui s processeurs, l'aectation cesseurs et le s clusters tâches contractées à s pro- routage minimiser contentions. s messages à travers le réseau d'interconnexion an Cas s ressources homogènes et graphe d'application irrégulier risation"quiconsisteàregrouperplusieursnoeudsd'ungraphetâchesan Certainesapprochescecasguresebasentsurleprincipe"cluste- s aecter graphes à une tâches même plus ressource. simp Ce (et procédé donc plus clusterisation réguliers). Par permet exemple d'obtenir [11]auteurssepcentlecadred'ununiqueclustermachinesavecs processeurs sur ce système et interconnexions ont un graphe irrégulier. homogènes. Les Les auteurs applications dénissent qu'ils une parallélisent au modèle graphe STG, sous le nom TTIG (Temporal Task Interaction extension Graph) calcul s permettant tâches, mais préciser en plus non un gré seulement concurrence poids en entre communication el. Ils développent et on Task une depenncies) stratégie d'allocation qui tire avantage nommée MATE ce modèle (Mapping en évaluant Algorithm l'utilité based regroupement ux tâches. du modèle TTIG [22] le modèle STG à Les savoir noeuds qu'ils représentent ce modèle ont tâches même pondérées signication par leur que complexité en calcul. Un arc d'un graphe TTIG dirigé d'un noeud T i vers T représentelevolumetotalscommunicationseectuées j T i vers T cité du modèle TTIG rési le fait qu'il associe un paramètre additionnel j.laspéci-

16 16 CHAPITRE 2. ÉTAT DE L'ART aux arcs, qui correspond au gré parallélisme. Pour ux tâches T i et T j adjacentes,i.eliéesparunarc e i,j alnt T i vers T j,legréparallélisme passociéàe i,j est: p = T c p T cj où T cp T j. correspondautempspendantlequel T i et T j s'exécutentenparallèle. T cj L'appeltion estletempsd'exécutiontoal Temporal possible modéliser une retion TIG dérive précénce ce nouveau paramètre le TTIG. car En il vient retion eet T i précètotalement T parallélismeassociéàl'arcalnt j semodéliselettigparungré T i à T j égalà0. Fig. 2.3ungrapheTTIG algorithme MATE [11] temps d'exécution l'application L'objectif en utilisant cet algorithme le modèle est TTIG minimiser déni précémment.l'idéeprincipaleest"clusteriser"tâchesfortementdépendantes le c'est-à-dire tâches à exécuter en associer leur associant au même une processeur. priorité. MATE Cette liste construit est dynamique une liste s recalculée a chaque aectation d'une tâche à un processeur. i.e est L'algorithme dit initial si aucune commence contrainte par dénir communication liste s noeuds ne l'empêche initiaux. Un démarrer noeud à au une début même l'application. distance en arcs On introduit s noeuds alors initiaux une notion sont dits niveau. du même Les niveau. noeuds Pour chaque noeud t i on calcule son niveau N(T i ) minimale en nombre d'arcs d'un noeud initial quelconque. correspondant Dans le à graphe sa distance Fig.2.3, T 1 est seule tâche initiale et on a valeurs N(T 1 ) = 0, N(T 2 ) =

17 2.3. APPROCHES POUR RÉSOUDRE LE PROBLÈME D'ALLOCATION17 1, N(T 3 ) = 1, N(T 4 ) = 1 et N(T 5 ) = noeuds selon un ordre croissant s niveaux. 2. L'algorithme L'idée principale considère est d'évaluer ensuite dépendancestâchesduniveauactuel(tâchesencoursd'allocation)aveccel s fortementdépendanted'unetâchedéjàallouéealorselleestgroupéeaveccelle-ci niveaux précénts(tâches déjà allouées). Si une tâche du niveau actuel est i.e au aectée paramètre au même grès processeur. parallèlisme Cette évaluation entre tâches dépendance indiqué se le fait graphe grâce TTIG.L'algorithmeévaluele gain àassocierunetâche T aumêmeprocesseurqu'unetâche i encoursd'allocation T j déjàallouéeetadjacente à 1 T l'algorithme calcule valeurs suivantes: i.pource temps d'exécution si agrégés :qu'onnote t nécessaire pour exécuter tâche a.c'estletempsminimum T i sur le même processeur que T tempsestdonnéparformule: j. Ce t a = T ci + T cj + T aj où T ci et T cj sonttempscalculrespectifs T i et T j. T au temps accumulé aj correspond T mêmeprocesseur.cetempsaccumulésertaéviterd'aectertroptâches j dû à l'aectation d'autres tâches adjacentes au à un même processeur. temps d'exécution si disjoints : qu'on note t cution minimal s ux tâches lorsque d. C'est le temps d'exé- T i diérentcelui est aectée à un processeur T j.cetempsestégalà t d = T com + T ci + T cj T par où T com correspond au temps communication entre T i et T j, T le temps durant lequel par est T i et T grâce au gré parallélisme j indiqué s'exécutent en le graphe parallèle, TTIG. ce temps obtenu legainestalorscalculécommesuit: gain = t d t a Une valeur positive du gain indique une forte dépendance T i avec T j. T i estdoncaectéeaumêmeprocesseurque T j.silegainestnégatif, T i estalors aectée au processeur le moins chargé Cas ressources hétérogènes et graphe régulier Dans [24] auteurs proposent une pteforme d'allocation tâches sur une grappe clusters s informations sur l'application (groupement et plusieurs ressources. clusters Un modèle distants), coût guidée tenant par compte utilisant du ce calcul modèle ainsi coût que s sont communications aussi proposées. y est proposé. Des heuristiques 1 ux tâches sont dites adjacentes si elle sont reliées par un arc

18 18 CHAPITRE 2. ÉTAT DE L'ART Le modèle côut : l'interconnexionsprocesseurs,topologiescommunications,taille Le coût s communications intra-cluster dépend s communication. messages échangés Les auteurs ainsi expriment que du nombre s coûts processeurs pour s topologies participants communication à Unidimensionnelle régulièrement : trouvées fréquente applications problèmes parallè: basés sur gril et matrices. Les processeurs échangent calcul s scientique avec leurs ux voisins(nord et sud) messages Anneau:Chaqueprocesseurreçoitsonvoisingaucheetenvoitaudroit. Arbre: comme souvent réduction. utilisée applications ayant s opérations globa Cecoûtestalorsexprimécommesuit: T comm [C i, τ](mtaille, p) = (c 1 p) + (p mtaille)/c 2 où C i est le cluster sur lequel tâches sont pcées, τ communication l'application, est topologie mtaille d'octets) transmis en un cycle d'itération est l'exécution, taille messages (nombre p processeurs sélectionnés communiquants, est le nombre c 1 est tence du réseau, c ban passante. 2 est cluster. Il se La peut communication que toutes entre tâches diérents ne puissent clusters pas entraîne être pcées une pénalité sur un même tage.ilfautdoncconsidérerenplus,fonctioncoûtcommunication, rou- un coût routage. T routage [C i, C j ](mtaille) = r 1 + r 2 mtaille où r 1 est une pénalité tence, et r 2 une pénalité par octet routé C i vers C suit: j. Une fonction coût total communication est alors dénie comme T commtotal [C i, τ] = T comm [C i, τ] + k T routage [C i, C j ] où kestlenombremessagesroutésparcycle.cettefonctiondépenddonc topologie communication τ formu pour trois topologies citées précémment: l'application, auteurs donnent T comm [1 D] = max i T comm[ci,1 D] T comm [Anneau] = sum i T comm [C i, Anneau] T comm [Arbre] = T comm [C racine, Arbre] + max i feuil T [C i, Arbre] Pour topologie 1 Donc le coût communication D, tous est processeurs limité par le communiquent cluster le plus simultanément. cas lent. Pour le l envoient Anneau, processeurs reçoivent d'abord leur voisin gauche puis Arbre,feuilcommuniquentmanièresimultanéeentreelpuisenvoient au droit. Le coût communication est donc additif. Pour topologie

19 2.3. APPROCHES POUR RÉSOUDRE LE PROBLÈME D'ALLOCATION19 àleurnoeudpère.lecoûtcommunicationpourcettetopologieestdoncdéni manière récursive. Unefonctioncoûtcalcutaussidéniecommesuit: T cal = ctaille coutarchi nbp DU/p où nbp DU du domaine est le données, nombre par exemple PDU (Primitive 4 octets) Data manipulés Unit : durant plus petit phase morceau calcul, ctaille est quantité calcul exécuté sur un PDU, coutarchi coût d'exécution spécique à l'architecture du processeur. est un Le coût d'exécution total l'application est alors nalement donné par T exe = nbcyc (T cal + T comm ) où nbcyc est le nombre cyc d'itération l'exécution. Les heuristiques : H2 qui cherchent s allocations Les auteurs minimisant proposent le ensuite coût exprimé ux heursistiques, ci-ssus. H1 et Heuristique avec s capacités H1 : Cette communication heuristique se intiques pce entre le cadre ressources. d'un système cettehypothèse,ils'agitbaserrecherchesurpuissancecalculs Dans clusters. processeurs. Les On clusters commence sont donc par cssés explorer selon le meilleur puissance cluster. cumulée On attribue leurs à disponib chaque tâche et s'il un reste processeur s tâches disponible. à pcer, S'il on n'y explore a plus le cluster processeurs le cssement, et ainsi suite. suivant HeuristiqueH2: Cette communication heuristique se du pce système sont un cadre hétérogènes. plus général, Un simple où cssement capacités s routageversunclusterpuissantpeutêtretroppénalisantparrapportàun clusters selon puissance n'est alors plus approprié car le coût routageversunclustercertesmoinspuissantmaisnécessitantstemps communicationinférieurs.l'heuristiqueh2estbaséesurvaleur T dénieprécémment,quitientcompteàfoisstempscalculets exe temps d'exploration communication. s clusters. Tout En procédant d'abord, on toujours établit un nouveau l'ordre s cssement établi par H1, on cherche, pour chaque cluster pris individuellement, clusters permettant d'obtenir une valeur celui T que si un cluster ne dispose que d'un nombre exe minimale. inférieur On peut ressources remarquer rapport au nombre tâches à pcer, certaines ces tâches sont, lors par attente cette sur phase certaines d'évaluation ressources clusters rrière uniquement, s premières considérées tâches déjà comme pcées. en Lesclusterssontensuitecsséssuivantvaleurminimale T On explore chaque cluster l'ordre du cssement en exécutant exe obtenue. phases: ux

20 20 CHAPITRE 2. ÉTAT DE L'ART Phase1:OnemploiemêmestratégiequeH1.Onsélectionnetous sélectionné. processeurs disponib et on attribue une tâche à chaque processeur Phase 2 : On essaie réduire composante T comm T sommes le cas d'un pcement interclusters(toutes exe tâches. Si n'ont nous pas explorés pu être celui pcées qui engendre sur le même le plus cluster), temps on considère communication parmi clusters T On enlève une s tâches pcées sur un processeur sélectionné comm et on. pce communication sur le cluster global en diminue cours d'exploration, et tant qu'il ceci existe tant s que processeurs le temps disponib sélectionné s sur processeurs le cluster en diminuant cours d'exploration. le temps A communication ce sta, nous avons appartenantàunclustermoinsbiencssé.cesontdoncsprocesseurs mais peut calcul.ils'agitdoncconsidérerconguration,parmicelobtenues être moins puissants, engendrant ainsi une hausse du temps avant et après minimisation composante T d'obtenir un temps d'exécution minimal. comm, qui permet Cas ressources hétérogènes et graphe irrégulier qui Dans prend [6] en entrée auteurs le graphe proposent s une tâches métho ainsi que clusterisation celui s processeurs. hiérarchique tâches fortement communiquantes sont groupées ainsi que processeurs Les pologiquement proches an d'obtenir s graphes plus simp. L'algorithme to- clusterisation génère ainsi ux arbres, un pour processeurs et un pour tâches, qu'il cherche ensuite à combiner. Algorithme clusterisation hiérarchique : tionprésentél'articleestutilisépourlegraphed'applicationainsiquepour L'algorithme clusterisa- legraphedusystèmeparallèle.itunevariationsalgorithmesclusterisation par agglomération comme clusters et qu'on où groupe l'on part pour d'un former ensemble plus tâches grands que clusters. l'on considère l'algortihmeestungraphe L'entrée G = (V, F )où V un ensemble d'arcs. Un ensemble estunensemblenoeudsetf E Une notion contient poids associés aux arcs F. d'anité d'unarcreliantuxnoeudsestgrandplusleuranitéestgran.l'algorithme est utilisée pour le groupement s noeuds. Plus le poids fonctionne noeuds avec en eectuant plus gran plusieurs anité sont passes groupés intermédiaires. s clusters. Durant une La passe passe termine cluster lorsque peut ne tous contenir noeuds qu'un ont seul été noeud(noeud ajoutés à un isolé cluster. i.e ne Il communiquant est à noter qu'un avec autres). pas pivot.cenoeustceluiadjacentàl'arcleplusrge(auplusgrandpoids)du La première étape d'une passe intermédiaire est sélectionner un noeud graphe. départage Puisqu'il d'abord y a au selon: minimum ux noeuds remplissant cette condition, on le plus grand nombre d'arcs rejoignant le noeud.

21 2.3. APPROCHES POUR RÉSOUDRE LE PROBLÈME D'ALLOCATION21 Laprochaineétapepasseestalorssélectionnervoisinsnonclusterisés lepluspetitindicenoeud. seuitalorsutilisépoursélectionnercandidatsàl'inclusionuncluster. du pivot. Ceux-ci sont ordonnés par anité décroissante. Un paramètre Ce un cluster paramètre aient a approximativement pour rôle permettre mêmes que l'ensemble poids. Si s le poids arcs contenus associé à liant un voisin du pivot au pivot peut être considéré simiire (selon le paramètre l'arc au cluster. seuil) Par à ceux exemple liant prenons membres le cas du s cluster noeuds au P, pivot, A, ce voisin est ajouté B et C 2.4où gure P estlenoeudpivotet Aet B onétégroupésavec P. C ajoutéauclustercarlepoidssonlienaveclepivotestassezsembbleàceux peutaussiêtre s est aussi liens compris considéré comme le cluster. pivot. Une Donc fois si qu'un noeud est ajouté au cluster, il C ses voisins non clusterisés pour une inclusion est probable ajouté au au cluster groupe courant. on considère n passe groupes noeuds à forte anité (clusters) sont intiés A et un représentant. nouveau graphe On applique est construit ensuite en une rempcant uxième chaque passe sur cluster ce nouveau par un noeud graphe. le L'algorithme seul noeud. clusterisation s'arrête lorsque le graphe ne contient plus qu'un B 147 C 145 P 150 A Cluster Fig. 2.4 Exemple clusterisation arbre Cette retraçant clusterisation clusterisation est dite hiérarchique au l s passes. car elle Dans permet l'exemple construire gure un 2.5,premièrepassel'algorithmevaintieruxclusters,l'uncomprenant noeuds a, b, c et d, et l'autre comprenant e et f. Appelons ces clusters g et h un graphe respectivement. contenant La ux uxième noeuds passe l'algorithme prend alors en entrée g et h passe précénte. Ces ux noeuds représentants sont regroupés et clusters l'algorithme intiés clusterisation termine. Algorithme d'allocation : prennentréeunarbrerésultantclusterisationdugraphesprocesseurs L'algorithme d'allocation proposé l'article

22 22 CHAPITRE 2. ÉTAT DE L'ART e 2 c 15 b Passe 2 i 10 f d a 14 Passe 1 h g Graphe à clusteriser Etat initial f e d c b a Arbre résultant Fig. 2.5 Arbre clusterisation ainsi ciées qu'un à chaque arbre feuille résultant clusterisation du graphe s processus. Asso- k processeur donc), on trouve l'arbre valeurs clusterisation s processeurs (à chaque L k et U charge travail minimum et maximum souhaitée k dénissant pour machine. respectivement Ces valeurs sont répercutées en valeurs m i et M i, aux noeuds non feuil(clusters) R que: i tels m i = L k et M i = U k oùksontfeuildusous-arbreenracinéen R i contrainte On dénit aussi charge une valeur travail minimum: viotion Vi correspondant à viotion V i = m i c i m i où c i est charge travail courante sur R i. Avec cette valeur viotion ux ensemb peuvent être dénis: S v = {V i V i > 0}et S a = {V i V i 0} L'ensemble S contrainte v charge contient minimum. tous Lorsque processeurs n'ayant pas encore remplit leur S v est ordonné par V première machine l'ordre est celle qui est plus loin i sa décroissants, travail minimum, c'est donc à elle qu'on doit aecter du travail en priorité. charge Une fois passel'ensemble qu'une machine remplit sa contrainte charge travail minimum, elle S ayant atteint leur charge a.cetensembleappelé travail minimum et auxiliaire,regroupemachines maximum. qui sont encore en ssous L'algorithme récursif d'allocation est appelé avec paramètres (r, R) où r estunnoeudl'arbresprocessuset Runnoeudl'arbresprocesseurs.

23 2.3. APPROCHES POUR RÉSOUDRE LE PROBLÈME D'ALLOCATION23 Pourl'appelinitial (r, R) vérie faisabilité sontracinessuxarbres.acestal'algorithme entrechargetravailminimumetmaximumtousprocesseursalorsil solution. Si le nombre processus n'est pas compris n'y a pas solution. L'algorithme vérie ensuite si le noeud R processeursestunefeuille(doncunemachine).danscecastousls l'arbre rsont s assignés l'algorithme au processeur récursif R. d'allocation. Cette uxième vérication est condtition d'arrêt L'algorithmeboucletantquels r tionned'abordleclusterprocesseurs n'ontpastousétéalloués.ilsélec- R m,ls Ravecplusgranvaleur V Il i sélectionne i.e le cluster ensuite processeurs le plus loin sa charge travail minimum. r m : le ls r alloue au cluster séléctionné précémment ayant le en plus réitérant grand l'algorithme nombre ls avec qu'il paramètres(r m, R m ) Autres heuristiques intéressantes du fait D'autres qu'elle méthos aient un but ne rentrent très restreint pas mais néanmoins cssication intéressant. décrite Dans[19] ci-ssus, par coût exemple en communication auteurs d'une proposent application une métho parallèle. dont La démarche le but est consiste réduire à faire le correspondre communications au inter-tâches. mieux le graphe An d'interconnexion pouvoir estimer s le processeurs coût en communication à celui s principaux: généré par une allocation possible, auteurs dénissent trois problèmes Déterminer le besoin en communication l'application parallèle : Pour pouvoir déterminer exactement talement l'application en mesurant volumes ce besoin, données il faut échangés exécuter entre to- tâches. dant l'exécution Cependant l'application auteurs font et appel ne souhaitent à leur métho pas gaspiller d'allocation toute pen- exécution pour extraire le graphe communications. Ils se basent une une assomption régurité le graphe communication s applications sur pour une durée parallè. retivement Ils surveillent petite donc par rapport le comportement à son temps l'application total an détecter s motifs réguliers et prédire le besoin d'exécution communication. total en Déterminer ressources réseau disponib sur le système information est représentée sous forme d'une table distance où Cette coût est associé à chaque communication possible entre processeurs du un système. Dénir un sélection allocations Cecritèreestévaluéàpartirsuxtabdistancesentrestâcheset processeurs. cation l'application. La métho Ce consiste coût est à évalué minimiser comme le coût suit: total en communi- N N C = c ij.d mim j i=1 j=1

Ordonnancement. N: nains de jardin. X: peinture extérieure. E: électricité T: toit. M: murs. F: fondations CHAPTER 1

Ordonnancement. N: nains de jardin. X: peinture extérieure. E: électricité T: toit. M: murs. F: fondations CHAPTER 1 CHAPTER 1 Ordonnancement 1.1. Étude de cas Ordonnancement de tâches avec contraintes de précédences 1.1.1. Exemple : construction d'une maison. Exercice. On veut construire une maison, ce qui consiste

Plus en détail

PROBLEMES D'ORDONNANCEMENT AVEC RESSOURCES

PROBLEMES D'ORDONNANCEMENT AVEC RESSOURCES Leçon 11 PROBLEMES D'ORDONNANCEMENT AVEC RESSOURCES Dans cette leçon, nous retrouvons le problème d ordonnancement déjà vu mais en ajoutant la prise en compte de contraintes portant sur les ressources.

Plus en détail

Ebauche Rapport finale

Ebauche Rapport finale Ebauche Rapport finale Sommaire : 1 - Introduction au C.D.N. 2 - Définition de la problématique 3 - Etat de l'art : Présentatio de 3 Topologies streaming p2p 1) INTRODUCTION au C.D.N. La croissance rapide

Plus en détail

LE PROBLEME DU PLUS COURT CHEMIN

LE PROBLEME DU PLUS COURT CHEMIN LE PROBLEME DU PLUS COURT CHEMIN Dans cette leçon nous définissons le modèle de plus court chemin, présentons des exemples d'application et proposons un algorithme de résolution dans le cas où les longueurs

Plus en détail

Structures de données non linéaires

Structures de données non linéaires Structures de données non linéaires I. Graphes Définition Un graphe (simple) orienté G est un couple (S, A), où : S est un ensemble dont les éléments sont appelés les sommets. A est un ensemble de couples

Plus en détail

Introduction aux Systèmes Distribués. Introduction générale

Introduction aux Systèmes Distribués. Introduction générale Introduction aux Systèmes Distribués Licence Informatique 3 ème année Introduction générale Eric Cariou Université de Pau et des Pays de l'adour Département Informatique Eric.Cariou@univ-pau.fr 1 Plan

Plus en détail

Algorithmes d'allocation de ressources pour réseaux virtuels

Algorithmes d'allocation de ressources pour réseaux virtuels MINISTÈRE DE L'ÉDUCATION NATIONALE, DE L'ENSEIGNEMENT SUPÉRIEUR ET DE LA RECHERCHE ****** Institut National des Sciences Appliquées TOULOUSE Département de Génie Électrique et Informatique Projet de fin

Plus en détail

Calcul rapide des puissances

Calcul rapide des puissances Calcul rapide des puissances Par Mathtous Il s'agit de puissances à exposant entier naturel (avec la convention a 0 = 1, et a 1 = a). Si on applique la dénition pour calculer a n, on calcule de proche

Plus en détail

Introduction. I Étude rapide du réseau - Apprentissage. II Application à la reconnaissance des notes.

Introduction. I Étude rapide du réseau - Apprentissage. II Application à la reconnaissance des notes. Introduction L'objectif de mon TIPE est la reconnaissance de sons ou de notes de musique à l'aide d'un réseau de neurones. Ce réseau doit être capable d'apprendre à distinguer les exemples présentés puis

Plus en détail

Algorithmes de recherche

Algorithmes de recherche Algorithmes de recherche 1 Résolution de problèmes par recherche On représente un problème par un espace d'états (arbre/graphe). Chaque état est une conguration possible du problème. Résoudre le problème

Plus en détail

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

Communications collectives et ordonnancement en régime permanent pour plates-formes hétérogènes Loris MARCHAL Laboratoire de l Informatique du Parallélisme Équipe Graal Communications collectives et ordonnancement en régime permanent pour plates-formes hétérogènes Thèse réalisée sous la direction

Plus en détail

Processus de décision répartis

Processus de décision répartis Processus de décision répartis Florent Matignon Renato Matuzaki Honda Miguel Robles 30 mars 2010 Table des matières I Introduction 2 Système réparti 2 II L'état global 2 1 Introduction 2 1.1 La problématique.........................................

Plus en détail

IFT630 Processus concurrents et parallélisme. Projet final Rapport. Présenté à Gabriel Girard

IFT630 Processus concurrents et parallélisme. Projet final Rapport. Présenté à Gabriel Girard IFT630 Processus concurrents et parallélisme Projet final Rapport Présenté à Gabriel Girard par Alexandre Tremblay (06 805 200) Pierre-François Laquerre (05 729 544) 15 avril 2008 Introduction Après plusieurs

Plus en détail

Guide pour la conception d'une application en C

Guide pour la conception d'une application en C Guide pour la conception d'une application en C Ph. Preux DESS IMST, ULCO Novembre 1999 1 Principes généraux Une application informatique, dès qu'elle dépasse une centaine de lignes de code, doit impérativement

Plus en détail

Figure 1. Structure répartie

Figure 1. Structure répartie Chapitre I: Applications Réparties et Middleware 1. Définition d une application répartie Une application répartie est constituée d un ensemble de processus (d objets, d agents, d acteurs) s exécutant

Plus en détail

Introduction à la Programmation Parallèle: MPI

Introduction à la Programmation Parallèle: MPI Introduction à la Programmation Parallèle: MPI Frédéric Gava et Gaétan Hains L.A.C.L Laboratoire d Algorithmique, Complexité et Logique Cours du M2 SSI option PSSR Plan 1 Modèle de programmation 2 3 4

Plus en détail

Université Laval Faculté des sciences et de génie Département d'informatique et de génie logiciel IFT-3101. Travail pratique #2

Université Laval Faculté des sciences et de génie Département d'informatique et de génie logiciel IFT-3101. Travail pratique #2 Université Laval Faculté des sciences et de génie Département d'informatique et de génie logiciel IFT-3101 Danny Dubé Hiver 2014 Version : 11 avril Questions Travail pratique #2 Traduction orientée-syntaxe

Plus en détail

L apprentissage automatique

L apprentissage automatique L apprentissage automatique L apprentissage automatique L'apprentissage automatique fait référence au développement, à l analyse et à l implémentation de méthodes qui permettent à une machine d évoluer

Plus en détail

Modélisation des réseaux : Le modèle OSI et ses dérivés

Modélisation des réseaux : Le modèle OSI et ses dérivés Chapitre 1 1 Modélisation des réseaux : Le modèle OSI et ses dérivés Le modèle OSI de l ISO 2 Le modèle d'interconnexion des Systèmes Ouverts (Open Systems Interconnection) a été proposé par l'iso (International

Plus en détail

Comment communiquer efficacement des informations entre les systèmes et/ou les humains?

Comment communiquer efficacement des informations entre les systèmes et/ou les humains? Sciences et Technologies de l Industrie et du Développement Durable Réseaux et internet CI0 : transmission de l'information cours Tle STI2D TRANS Comment communiquer efficacement des informations entre

Plus en détail

Chapitre 1 : Introduction aux bases de données

Chapitre 1 : Introduction aux bases de données Chapitre 1 : Introduction aux bases de données Les Bases de Données occupent aujourd'hui une place de plus en plus importante dans les systèmes informatiques. Les Systèmes de Gestion de Bases de Données

Plus en détail

CHAPITRE 1. Introduction aux web services. 1.1 Définition. Contenu du chapitre : Env. De dev. Langage Visual Studio Java EE Qt Creator C#

CHAPITRE 1. Introduction aux web services. 1.1 Définition. Contenu du chapitre : Env. De dev. Langage Visual Studio Java EE Qt Creator C# CHAPITRE 1 Introduction aux web services Contenu du chapitre : Env. De dev. Langage Visual Studio Java EE Qt Creator C# NetBeans JavaScript Eclipse Objective C Xcode PHP HTML Objectifs du chapitre : Ce

Plus en détail

Conception d'un réseau de transport d'électricité

Conception d'un réseau de transport d'électricité La Fédération Française des Jeux Mathématiques et la Société de Calcul Mathématique SA avec l'appui de Réseau de Transport d'electricité Conception d'un réseau de transport d'électricité Auteurs : Florian

Plus en détail

Algorithmes d'apprentissage

Algorithmes d'apprentissage Algorithmes d'apprentissage 1 Agents qui apprennent à partir d'exemples La problématique : prise de décision automatisée à partir d'un ensemble d'exemples Diagnostic médical Réponse à une demande de prêt

Plus en détail

M2 TIIR (2013-2014) Bilel Derbel

M2 TIIR (2013-2014) Bilel Derbel M2 TIIR (2013-2014) Bilel Derbel Notre but est de concevoir une application générique sur grid5000 qui permet de déployer des calculs parallèles de façon transparente Plus précisément, nous nous plaçons

Plus en détail

Les réseaux cellulaires

Les réseaux cellulaires Les réseaux cellulaires Introduction Master 2 Professionnel STIC-Informatique Module RMHD 1 Introduction Les réseaux cellulaires sont les réseaux dont l'évolution a probablement été la plus spectaculaire

Plus en détail

RapidMiner. Data Mining. 1 Introduction. 2 Prise en main. Master Maths Finances 2010/2011. 1.1 Présentation. 1.2 Ressources

RapidMiner. Data Mining. 1 Introduction. 2 Prise en main. Master Maths Finances 2010/2011. 1.1 Présentation. 1.2 Ressources Master Maths Finances 2010/2011 Data Mining janvier 2011 RapidMiner 1 Introduction 1.1 Présentation RapidMiner est un logiciel open source et gratuit dédié au data mining. Il contient de nombreux outils

Plus en détail

IFSIC Université de Rennes 1 Campus de Beaulieu 35042 RENNES CEDEX. IRISA INRIA Équipe MYRIADS Campus de Beaulieu 35042 RENNES CEDEX

IFSIC Université de Rennes 1 Campus de Beaulieu 35042 RENNES CEDEX. IRISA INRIA Équipe MYRIADS Campus de Beaulieu 35042 RENNES CEDEX IFSIC Université de Rennes 1 Campus de Beaulieu 35042 RENNES CEDEX IRISA INRIA Équipe MYRIADS Campus de Beaulieu 35042 RENNES CEDEX Migration dynamique d'applications réparties virtualisées dans les fédérations

Plus en détail

Diagrammes de décisions binaires

Diagrammes de décisions binaires Diagrammes de décisions binaires Épreuve pratique d'algorithmique et de programmation Concours commun des écoles normales supérieures Durée de l'épreuve: 3 heures 30 minutes Juillet 2009 ATTENTION! N oubliez

Plus en détail

NOTIONS DE RESEAUX INFORMATIQUES

NOTIONS DE RESEAUX INFORMATIQUES NOTIONS DE RESEAUX INFORMATIQUES GENERALITES Définition d'un réseau Un réseau informatique est un ensemble d'équipements reliés entre eux afin de partager des données, des ressources et d'échanger des

Plus en détail

Exemples de problèmes et d applications. INF6953 Exemples de problèmes 1

Exemples de problèmes et d applications. INF6953 Exemples de problèmes 1 Exemples de problèmes et d applications INF6953 Exemples de problèmes Sommaire Quelques domaines d application Quelques problèmes réels Allocation de fréquences dans les réseaux radio-mobiles Affectation

Plus en détail

Recherche dans un tableau

Recherche dans un tableau Chapitre 3 Recherche dans un tableau 3.1 Introduction 3.1.1 Tranche On appelle tranche de tableau, la donnée d'un tableau t et de deux indices a et b. On note cette tranche t.(a..b). Exemple 3.1 : 3 6

Plus en détail

TP2 - Conguration réseau et commandes utiles. 1 Généralités. 2 Conguration de la machine. 2.1 Commande hostname

TP2 - Conguration réseau et commandes utiles. 1 Généralités. 2 Conguration de la machine. 2.1 Commande hostname Département d'informatique Architecture des réseaux TP2 - Conguration réseau et commandes utiles L'objectif de ce TP est d'une part de vous présenter la conguration réseau d'une machine dans l'environnement

Plus en détail

modélisation solide et dessin technique

modélisation solide et dessin technique CHAPITRE 1 modélisation solide et dessin technique Les sciences graphiques regroupent un ensemble de techniques graphiques utilisées quotidiennement par les ingénieurs pour exprimer des idées, concevoir

Plus en détail

Quels usages des données massives pour les statistiques publiques? Enjeux, méthodes et perspectives

Quels usages des données massives pour les statistiques publiques? Enjeux, méthodes et perspectives Quels usages des données massives pour les statistiques publiques? Enjeux, méthodes et perspectives Stéphanie Combes et Pauline Givord (DMCSI) INSEE-DMSCI 02/04/2015 Plan Qu'est-ce que le Big Data? Les

Plus en détail

Arbres ordonnés, binaires, tassés, FAP, tri par FAP, tas, tri par tas

Arbres ordonnés, binaires, tassés, FAP, tri par FAP, tas, tri par tas Arbres ordonnés, binaires, tassés, FAP, tri par FAP, tas, tri par tas 1. Arbres ordonnés 1.1. Arbres ordonnés (Arbres O) On considère des arbres dont les nœuds sont étiquetés sur un ensemble muni d'un

Plus en détail

WildCAT : un cadre générique pour la construction d'applications sensibles au contexte

WildCAT : un cadre générique pour la construction d'applications sensibles au contexte WildCAT : un cadre générique pour la construction d'applications sensibles au contexte Pierre-Charles David France Télécom, Recherche & Développement Réunion Adapt, Paris 2006-04-06 Plan 1 Introduction

Plus en détail

Fiche de l'awt Le modèle peer to peer

Fiche de l'awt Le modèle peer to peer Fiche de l'awt Le modèle peer to peer L'arrivée du peer to peer (point à point) bouleverse le modèle traditionnel client-serveur. Dorénavant, toute application peut être à la fois client et serveur. Quels

Plus en détail

Conduite et Gestion de Projet - Cahier des charges

Conduite et Gestion de Projet - Cahier des charges Conduite et Gestion de Projet - Cahier des charges 1 Introduction Sophie Toulouse LIPN - Université Paris 13 +33.1.49.40.40.73 99 av. Jean-Baptiste Clément toulouse@lipn.univ-paris13.fr 93430 Villetaneuse

Plus en détail

Arbres binaires Version prof Version prof

Arbres binaires Version prof Version prof Arbres binaires Version prof Version prof types /* déclaration du type t_element */ t_arbrebinaire = t_noeudbinaire t_noeudbinaire = enregistrement t_element cle t_arbrebinaire fg, fd n enregistrement

Plus en détail

Techniques de DM pour la GRC dans les banques Page 11

Techniques de DM pour la GRC dans les banques Page 11 Techniques de DM pour la GRC dans les banques Page 11 II.1 Introduction Les techniques de data mining sont utilisé de façon augmentaté dans le domaine économique. Tels que la prédiction de certains indicateurs

Plus en détail

Réseaux. Mathias Kleiner mathias.kleiner@ensam.eu http://www.lsis.org/kleinerm. Septembre 2012. Systèmes informatiques. Réseaux.

Réseaux. Mathias Kleiner mathias.kleiner@ensam.eu http://www.lsis.org/kleinerm. Septembre 2012. Systèmes informatiques. Réseaux. Mathias Kleiner mathias.kleiner@ensam.eu http://www.lsis.org/kleinerm Septembre 2012 http://creativecommons.org/licenses/by-sa/3.0/ Plan du cours 1 2 3 4 5 Notion de réseau Reseau (network) = connection

Plus en détail

Programmabilité du réseau avec l'infrastructure axée sur les applications (ACI) de Cisco

Programmabilité du réseau avec l'infrastructure axée sur les applications (ACI) de Cisco Livre blanc Programmabilité du réseau avec l'infrastructure axée sur les applications (ACI) de Cisco Présentation Ce document examine la prise en charge de la programmabilité sur l'infrastructure axée

Plus en détail

chapitre 4 Nombres de Catalan

chapitre 4 Nombres de Catalan chapitre 4 Nombres de Catalan I Dénitions Dénition 1 La suite de Catalan (C n ) n est la suite dénie par C 0 = 1 et, pour tout n N, C n+1 = C k C n k. Exemple 2 On trouve rapidement C 0 = 1, C 1 = 1, C

Plus en détail

Introduction aux grilles: L'exemple XtremWeb

Introduction aux grilles: L'exemple XtremWeb Introduction aux grilles: L'exemple XtremWeb Nicolas Bouillot bouillot@cnam.fr 1 Plan Introduction Première définition Les organisations virtuelles Contraintes liées aux Middlewares de Grilles Le calcul

Plus en détail

ORACLE TUNING PACK 11G

ORACLE TUNING PACK 11G ORACLE TUNING PACK 11G PRINCIPALES CARACTÉRISTIQUES : Conseiller d'optimisation SQL (SQL Tuning Advisor) Mode automatique du conseiller d'optimisation SQL Profils SQL Conseiller d'accès SQL (SQL Access

Plus en détail

Réalisation d'un seeder BitTorrent en CPC Stage de TRE sous la direction de J. Chroboczek et G. Kerneis

Réalisation d'un seeder BitTorrent en CPC Stage de TRE sous la direction de J. Chroboczek et G. Kerneis Réalisation d'un seeder BitTorrent en CPC Stage de TRE sous la direction de J. Chroboczek et G. Kerneis Pejman Attar Yoann Canal 30 juin 2009 1 Table des matières 1 Introduction 3 1.1 CPC................................

Plus en détail

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

Evaluation des performances de programmes parallèles haut niveau à base de squelettes Evaluation des performances de programmes parallèles haut niveau à base de squelettes Enhancing the Performance Predictability of Grid Applications with Patterns and Process Algebras A. Benoit, M. Cole,

Plus en détail

Migration dynamique d applications réparties virtualisées dans les fédérations d infrastructures distribuées

Migration dynamique d applications réparties virtualisées dans les fédérations d infrastructures distribuées Migration dynamique d applications réparties virtualisées dans les fédérations d infrastructures distribuées Djawida Dib To cite this version: Djawida Dib. Migration dynamique d applications réparties

Plus en détail

Examen de Système. Questions de cours : les threads. Licence 3 Informatique. ENS Cachan, mardi 13 janvier 2009

Examen de Système. Questions de cours : les threads. Licence 3 Informatique. ENS Cachan, mardi 13 janvier 2009 Examen de Système Licence 3 Informatique ENS Cachan, mardi 13 janvier 2009 Durée : 3h. Documents autorisés : livres, notes de cours. Langage de programmation : C. Des erreurs de syntaxe, de nom de fonction

Plus en détail

1.5 0.5 -0.5 -1.5 0 20 40 60 80 100 120. (VM(t i ),Q(t i+j ),VM(t i+j ))

1.5 0.5 -0.5 -1.5 0 20 40 60 80 100 120. (VM(t i ),Q(t i+j ),VM(t i+j )) La logique oue dans les PME/PMI Application au dosage de l'eau dans les bétons P.Y. Glorennec INSA de Rennes/IRISA glorenne@irisa.fr C. Hérault Hydrostop christophe@hydrostop.fr V. Hulin Hydrostop vincent@hydrostop.fr

Plus en détail

Module 0 : Présentation de Windows 2000

Module 0 : Présentation de Windows 2000 Module 0 : Présentation de Table des matières Vue d'ensemble Systèmes d'exploitation Implémentation de la gestion de réseau dans 1 Vue d'ensemble Donner une vue d'ensemble des sujets et des objectifs de

Plus en détail

Architecture N-Tier. Ces données peuvent être saisies interactivement via l interface ou lues depuis un disque. Application

Architecture N-Tier. Ces données peuvent être saisies interactivement via l interface ou lues depuis un disque. Application Architecture Multi-Tier Traditionnellement une application informatique est un programme exécutable sur une machine qui représente la logique de traitement des données manipulées par l application. Ces

Plus en détail

La Solution Crypto et les accès distants

La Solution Crypto et les accès distants La Solution Crypto et les accès distants Introduction L'objectif de ce document est de présenter les possibilités d'accès distants à La Solution Crypto. Cette étude s'appuie sur l'exemple d'un groupement

Plus en détail

Faculté Polytechnique de Mons

Faculté Polytechnique de Mons Faculté Polytechnique de Mons Génération d'un site Web automatiquement à partir d'une base de données relationnelle : Utilisation de XML Projet de 3 e Informatique et Gestion Année académique 2007-2008

Plus en détail

Date : 18.11.2013 Tangram en carré page

Date : 18.11.2013 Tangram en carré page Date : 18.11.2013 Tangram en carré page Titre : Tangram en carré Numéro de la dernière page : 14 Degrés : 1 e 4 e du Collège Durée : 90 minutes Résumé : Le jeu de Tangram (appelé en chinois les sept planches

Plus en détail

Répartition de charge dynamique dans un système distribuée

Répartition de charge dynamique dans un système distribuée Rapport de TER Répartition de charge dynamique dans un système distribuée Tuteur : Stephane Mancini Benjamin Petit Grenoble INP - Ensimag Mai 2010 Table des matières 1 Introduction 4 1.1 Contexte pratique...................................

Plus en détail

Chapitre V : La gestion de la mémoire. Hiérarchie de mémoires Objectifs Méthodes d'allocation Simulation de mémoire virtuelle Le mapping

Chapitre V : La gestion de la mémoire. Hiérarchie de mémoires Objectifs Méthodes d'allocation Simulation de mémoire virtuelle Le mapping Chapitre V : La gestion de la mémoire Hiérarchie de mémoires Objectifs Méthodes d'allocation Simulation de mémoire virtuelle Le mapping Introduction Plusieurs dizaines de processus doivent se partager

Plus en détail

Guide de configuration de SQL Server pour BusinessObjects Planning

Guide de configuration de SQL Server pour BusinessObjects Planning Guide de configuration de SQL Server pour BusinessObjects Planning BusinessObjects Planning XI Release 2 Copyright 2007 Business Objects. Tous droits réservés. Business Objects est propriétaire des brevets

Plus en détail

processus fonction main() l'image binaire contexte d'exécution un contexte mémoire. en même temps

processus fonction main() l'image binaire contexte d'exécution un contexte mémoire. en même temps 1 2 Dans une première approche, on peut dire qu'un processus représente une "application" qui tourne en mémoire. Il sera donc chargé en mémoire par le noyau et commencera son exécution; du point de vue

Plus en détail

Projet : PcAnywhere et Le contrôle à distance.

Projet : PcAnywhere et Le contrôle à distance. Projet : PcAnywhere et Le contrôle à distance. PAGE : 1 SOMMAIRE I)Introduction 3 II) Qu'est ce que le contrôle distant? 4 A.Définition... 4 B. Caractéristiques.4 III) A quoi sert le contrôle distant?.5

Plus en détail

Systèmes Binaires. V. Langlet

Systèmes Binaires. V. Langlet Systèmes Binaires V. Langlet Niveau : De la Terminale aux Maths du supérieur Diculté : De plus en plus dur au l des exercices. Durée : Environ deux heures, suivant la compréhension du sujet. Rubrique(s)

Plus en détail

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

Métriques de performance pour les algorithmes et programmes parallèles Métriques de performance pour les algorithmes et programmes parallèles 11 18 nov. 2002 Cette section est basée tout d abord sur la référence suivante (manuel suggéré mais non obligatoire) : R. Miller and

Plus en détail

UEO11 COURS/TD 1. nombres entiers et réels codés en mémoire centrale. Caractères alphabétiques et caractères spéciaux.

UEO11 COURS/TD 1. nombres entiers et réels codés en mémoire centrale. Caractères alphabétiques et caractères spéciaux. UEO11 COURS/TD 1 Contenu du semestre Cours et TDs sont intégrés L objectif de ce cours équivalent a 6h de cours, 10h de TD et 8h de TP est le suivant : - initiation à l algorithmique - notions de bases

Plus en détail

Rapport de stage en Master Recherche Informatique

Rapport de stage en Master Recherche Informatique Rapport de stage en Master Recherche Informatique Ordonnancement de tâches dans des grappes de calculateurs par Jérôme Gallard Équipe d'accueil : PARIS Encadrement : Christine Morin, Emmanuel Jeanvoine

Plus en détail

Pourquoi l apprentissage?

Pourquoi l apprentissage? Pourquoi l apprentissage? Les SE sont basés sur la possibilité d extraire la connaissance d un expert sous forme de règles. Dépend fortement de la capacité à extraire et formaliser ces connaissances. Apprentissage

Plus en détail

Table des matières. 1 Programmation linéaire 1

Table des matières. 1 Programmation linéaire 1 Table des matières 1 Programmation linéaire 1 2 La théorie des graphes 3 2.1 Dénitions et premières exemples................... 6 2.2 Représentation non graphique d'un graphe.............. 9 2.2.1 Représentation

Plus en détail

Programmation linéaire

Programmation linéaire CHAPTER 1 Programmation linéaire 1.1. Qu'est-ce que la programmation linéaire 1.1.1. Exemple: le problème du régime de Polly [1, p.3]. Besoins journaliers: Énergie: 2000 kcal Protéines: 55g Calcium: 800

Plus en détail

PARCOURS DU CAVALIER SUR L ÉCHIQUIER

PARCOURS DU CAVALIER SUR L ÉCHIQUIER I05 ÉPREUVE COMMUNE DE TIPE 2011 - Partie D TITRE : PARCOURS DU CAVALIER SUR L ÉCHIQUIER Temps de préparation :.. 2 h 15 minutes Temps de présentation devant les examinateurs :.10 minutes Dialogue avec

Plus en détail

Les systèmes RAID Architecture des ordinateurs

Les systèmes RAID Architecture des ordinateurs METAIS Cédric 2 ème année Informatique et réseaux Les systèmes RAID Architecture des ordinateurs Cédric METAIS ISMRa - 1 - LES DIFFERENTS SYSTEMES RAID SOMMAIRE INTRODUCTION I LES DIFFERENTS RAID I.1 Le

Plus en détail

Domain Name System. F. Nolot

Domain Name System. F. Nolot Domain Name System F. Nolot 1 Domain Name System Principe F. Nolot 2 Les besoins Internet est composé de plusieurs réseaux Chaque réseau est composé de sous réseaux Les sous réseaux sont constitués de

Plus en détail

Info0804. Cours 6. Optimisation combinatoire : Applications et compléments

Info0804. Cours 6. Optimisation combinatoire : Applications et compléments Recherche Opérationnelle Optimisation combinatoire : Applications et compléments Pierre Delisle Université de Reims Champagne-Ardenne Département de Mathématiques et Informatique 17 février 2014 Plan de

Plus en détail

NOTATIONS PRÉLIMINAIRES

NOTATIONS PRÉLIMINAIRES Pour le Jeudi 14 Octobre 2010 NOTATIONS Soit V un espace vectoriel réel ; l'espace vectoriel des endomorphismes de l'espace vectoriel V est désigné par L(V ). Soit f un endomorphisme de l'espace vectoriel

Plus en détail

ManageEngine IT360 : Gestion de l'informatique de l'entreprise

ManageEngine IT360 : Gestion de l'informatique de l'entreprise ManageEngine IT360 Présentation du produit ManageEngine IT360 : Gestion de l'informatique de l'entreprise Améliorer la prestation de service à l'aide d'une approche intégrée de gestion des performances

Plus en détail

L INFORMATION GEOGRAPHIQUE

L INFORMATION GEOGRAPHIQUE Champs sur Marne ENSG/CERSIG Le 19-nove.-02 L INFORMATION GEOGRAPHIQUE Archivage Le Système d information géographique rassemble de l information afin de permettre son utilisation dans des applications

Plus en détail

Resolution limit in community detection

Resolution limit in community detection Introduction Plan 2006 Introduction Plan Introduction Introduction Plan Introduction Point de départ : un graphe et des sous-graphes. But : quantifier le fait que les sous-graphes choisis sont des modules.

Plus en détail

Complexité. Licence Informatique - Semestre 2 - Algorithmique et Programmation

Complexité. Licence Informatique - Semestre 2 - Algorithmique et Programmation Complexité Objectifs des calculs de complexité : - pouvoir prévoir le temps d'exécution d'un algorithme - pouvoir comparer deux algorithmes réalisant le même traitement Exemples : - si on lance le calcul

Plus en détail

Les clusters Linux. 4 août 2004 Benoît des Ligneris, Ph. D. benoit.des.ligneris@revolutionlinux.com. white-paper-cluster_fr.sxw, Version 74 Page 1

Les clusters Linux. 4 août 2004 Benoît des Ligneris, Ph. D. benoit.des.ligneris@revolutionlinux.com. white-paper-cluster_fr.sxw, Version 74 Page 1 Les clusters Linux 4 août 2004 Benoît des Ligneris, Ph. D. benoit.des.ligneris@revolutionlinux.com white-paper-cluster_fr.sxw, Version 74 Page 1 Table des matières Introduction....2 Haute performance (High

Plus en détail

Stratégie de groupe dans Active Directory

Stratégie de groupe dans Active Directory Stratégie de groupe dans Active Directory 16 novembre 2012 Dans ce document vous trouverez des informations fondamentales sur les fonctionnements de Active Directory, et de ses fonctionnalités, peut être

Plus en détail

TP : Shell Scripts. 1 Remarque générale. 2 Mise en jambe. 3 Avec des si. Systèmes et scripts

TP : Shell Scripts. 1 Remarque générale. 2 Mise en jambe. 3 Avec des si. Systèmes et scripts E3FI ESIEE Paris Systèmes et scripts B. Perret TP : Shell Scripts 1 Remarque générale Lorsque vous cherchez des informations sur Internet, n'oubliez pas que langage de shell script que nous avons vu correspond

Plus en détail

Services et protocoles pour l'exécution fiable d'applications distribuées dans les grilles de calcul

Services et protocoles pour l'exécution fiable d'applications distribuées dans les grilles de calcul Services et protocoles pour l'exécution fiable d'applications distribuées dans les grilles de calcul Thomas Ropars Équipe-projet PARIS 1 Les applications de calcul scientifique Objectifs : Simuler des

Plus en détail

Langage HTML (2 partie) lt La Salle Avignon BTS IRIS

Langage HTML (2 partie) <HyperText Markup Language> <tv>lt La Salle Avignon BTS IRIS</tv> Langage HTML (2 partie) «Je n'ai fait que prendre le principe d - hypertexte et le relier au principe du TCP et du DNS et alors boum! ce fut le World Wide Web!» Tim Berners-Lee

Plus en détail

Examen technique des technologies de mise en cache

Examen technique des technologies de mise en cache technologies de mise en cache LIVRE BLANC Au cours des 10 dernières années, l'utilisation d'applications facilitant les processus métier a considérablement évolué. Ce qui était un plus avantageux fait

Plus en détail

Formateurs : Jackie DAÖN Franck DUBOIS Médiapôle de Guyancourt

Formateurs : Jackie DAÖN Franck DUBOIS Médiapôle de Guyancourt Client sur un domaine stage personnes ressources réseau en établissement janvier 2004 Formateurs : Jackie DAÖN Franck DUBOIS Médiapôle de Guyancourt Lycée de Villaroy 2 rue Eugène Viollet Le Duc BP31 78041

Plus en détail

Compte-rendu de projet de Système de gestion de base de données

Compte-rendu de projet de Système de gestion de base de données Compte-rendu de projet de Système de gestion de base de données Création et utilisation d'un index de jointure LAMBERT VELLER Sylvain M1 STIC Université de Bourgogne 2010-2011 Reponsable : Mr Thierry Grison

Plus en détail

Ensimag 2A. Rapport de TER. Application de la Recherche Opérationnelle à la Finance

Ensimag 2A. Rapport de TER. Application de la Recherche Opérationnelle à la Finance Ensimag 2A Rapport de TER Application de la Recherche Opérationnelle à la Finance Elève : Yuefei HUANG Tuteur : Zoltán SZIGETI Mai, 2010 2 Sommaire 1. Introduction... 3 2. Le marché des changes et arbitrage...

Plus en détail

Cours admin 200x serveur : DNS et Netbios

Cours admin 200x serveur : DNS et Netbios LE SERVICE DNS Voici l'adresse d'un site très complet sur le sujet (et d'autres): http://www.frameip.com/dns 1- Introduction : Nom Netbios et DNS Résolution de Noms et Résolution inverse Chaque composant

Plus en détail

Cours Langage C/C++ Programmation modulaire

Cours Langage C/C++ Programmation modulaire Cours Langage C/C++ Programmation modulaire Thierry Vaira BTS IRIS Avignon tvaira@free.fr «v0.1 Rappel Programmation modulaire (1/2) Le découpage d'un programme en sous-programmes est appelée programmation

Plus en détail

Cours n 12. Technologies WAN 2nd partie

Cours n 12. Technologies WAN 2nd partie Cours n 12 Technologies WAN 2nd partie 1 Sommaire Aperçu des technologies WAN Technologies WAN Conception d un WAN 2 Lignes Louées Lorsque des connexions dédiées permanentes sont nécessaires, des lignes

Plus en détail

Client Citrix ICA Windows CE Carte de référence rapide

Client Citrix ICA Windows CE Carte de référence rapide Client Citrix ICA Windows CE Carte de référence rapide Exigences Pour exécuter le client ICA Windows CE, vous devez disposer des éléments suivants : Un périphérique Windows CE Une carte d'interface réseau

Plus en détail

Architecture Logicielle

Architecture Logicielle Architecture Logicielle Chapitre 3: UML pour la description et la documentation d une architecture logicielle Année universitaire 2013/2014 Semestre 1 Rappel L architecture d un programme ou d un système

Plus en détail

Cybernet : Utilisation de métaphores et des techniques de réalité virtuelle pour la représentation de données. Application à la gestion de réseau.

Cybernet : Utilisation de métaphores et des techniques de réalité virtuelle pour la représentation de données. Application à la gestion de réseau. Cybernet : Utilisation de métaphores et des techniques de réalité virtuelle pour la représentation de données. Application à la gestion de réseau. P. Abel*, P. Gros*, D. Loisel* & J.P. Paris** Institut

Plus en détail

Systemes d'exploitation des ordinateurs

Systemes d'exploitation des ordinateurs ! " #$ % $ &' ( $ plan_ch6_m1 Systemes d'exploitation des ordinateurs Conception de Systèmes de Gestion de la Mémoire Centrale Objectifs 1. Conception de systèmes paginés 2. Conception des systèmes segmentés

Plus en détail

Télécom Nancy Année 2013-2014

Télécom Nancy Année 2013-2014 Télécom Nancy Année 2013-2014 Rapport 1A Ajout du langage C dans la Programmer's Learning Machine GIANNINI Valentin Loria 615, rue du Jardin Botanique 54600, Villers-Lès-Nancy Maître de stage : QUINSON

Plus en détail

Proposition d activité utilisant l application. Tripatouille. (http://www.malgouyres.fr/tripatouille/)

Proposition d activité utilisant l application. Tripatouille. (http://www.malgouyres.fr/tripatouille/) IREM Clermont-Ferrand Algorithmique au lycée Malika More malika.more@u-clermont1.fr 28 janvier 2011 Proposition d activité utilisant l application Tripatouille (http://www.malgouyres.fr/tripatouille/)

Plus en détail

Vers l'ordinateur quantique

Vers l'ordinateur quantique Cours A&G Vers l'ordinateur quantique Données innies On a vu dans les chapîtres précédents qu'un automate permet de représenter de manière nie (et même compacte) une innité de données. En eet, un automate

Plus en détail

Licences Windows Server 2012 R2 dans le cadre de la virtualisation

Licences Windows Server 2012 R2 dans le cadre de la virtualisation Résumé des licences en volume Licences Windows Server 2012 R2 dans le cadre de la virtualisation Ce résumé s'applique à tous les programmes de licences en volume Microsoft. Sommaire Synthèse... 2 Nouveautés

Plus en détail

TP : Jouons au Poker

TP : Jouons au Poker Univ. Lille1 - Licence Informatique 2ème année 2014-15 Algorithmes et Programmation Impérative 2 TP : Jouons au Poker Objectifs : Programmation modulaire Manipulation de types somme Filtrage de motifs

Plus en détail

1 Codes linéaires. G = [I k A]. Dans ce cas on constate que la matrice. H = [ t A I n k ] est une matrice de contrôle de C. Le syndrome de x F n q

1 Codes linéaires. G = [I k A]. Dans ce cas on constate que la matrice. H = [ t A I n k ] est une matrice de contrôle de C. Le syndrome de x F n q 1 Codes linéaires Un code de longueur n est une partie de F n q. Un code linéaire C de longueur n sur le corps ni F q est un sous-espace vectoriel de F n q. Par défaut, un code sera supposé linéaire. La

Plus en détail

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

Julien MATHEVET Alexandre BOISSY GSID 4. Rapport RE09. Load Balancing et migration Julien MATHEVET Alexandre BOISSY GSID 4 Rapport Load Balancing et migration Printemps 2001 SOMMAIRE INTRODUCTION... 3 SYNTHESE CONCERNANT LE LOAD BALANCING ET LA MIGRATION... 4 POURQUOI FAIRE DU LOAD BALANCING?...

Plus en détail