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

Gestion d'un entrepôt

Gestion d'un entrepôt Gestion d'un entrepôt Épreuve pratique d'algorithmique et de programmation Concours commun des écoles normales supérieures Durée de l'épreuve: 3 heures 30 minutes Juin/Juillet 2010 ATTENTION! N oubliez

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

Equilibre de charge. Equilibre de charge statique Equilibre de charge dynamique

Equilibre de charge. Equilibre de charge statique Equilibre de charge dynamique Equilibre de charge Equilibre de charge statique Equilibre de charge dynamique Approches centralisées Approches distribuées Approches semi-distribuées Jaillet Info53 - L3 Informatique - 2006 1 Equilibre

Plus en détail

1 Exercice 1 Question de cours (4 points)

1 Exercice 1 Question de cours (4 points) Info32B Systèmes d'exploitation année 2013-2014 Examen (1ère session) 16 décembre 2014 N. Sabouret L'épreuve dure 2h30. Tous les documents sont autorisés. Les exercices sont indépendants. 1 Exercice 1

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

CH.2 CODES CORRECTEURS

CH.2 CODES CORRECTEURS CH.2 CODES CORRECTEURS 2.1 Le canal bruité 2.2 La distance de Hamming 2.3 Les codes linéaires 2.4 Les codes de Reed-Muller 2.5 Les codes circulaires 2.6 Le câblage des codes circulaires 2.7 Les performances

Plus en détail

Projet OpNet. Spécialité Réseaux 2003/2004 Yannick GRENZINGER Loic JAQUEMET

Projet OpNet. Spécialité Réseaux 2003/2004 Yannick GRENZINGER Loic JAQUEMET Projet OpNet Spécialité Réseaux 2003/2004 Yannick GRENZINGER Loic JAQUEMET 1Présentation...3 1.1Le besoin de mobilité...3 1.2Le protocole IP Mobile...4 1.3Opnet...5 1.4Le projet...6 2La réalisation du

Plus en détail

INTRODUCTION AUX PROBLEMES COMBINATOIRES "DIFFICILES" : LE PROBLEME DU VOYAGEUR DE COMMERCE ET LE PROBLEME DE COLORATION D'UN GRAPHE

INTRODUCTION AUX PROBLEMES COMBINATOIRES DIFFICILES : LE PROBLEME DU VOYAGEUR DE COMMERCE ET LE PROBLEME DE COLORATION D'UN GRAPHE Leçon 10 INTRODUCTION AUX PROBLEMES COMBINATOIRES "DIFFICILES" : LE PROBLEME DU VOYAGEUR DE COMMERCE ET LE PROBLEME DE COLORATION D'UN GRAPHE Dans cette leçon, nous présentons deux problèmes très célèbres,

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

1 Introduction. 2 Algorithmes sans élagage. 2.1 Minimax. Chapitre 3 : Jeux (Février 2007, Pierre Gançarski)

1 Introduction. 2 Algorithmes sans élagage. 2.1 Minimax. Chapitre 3 : Jeux (Février 2007, Pierre Gançarski) Chapitre 3 : Jeux (Février 2007, Pierre Gançarski) 1 Introduction Quatre caractérisques pour les jeux étudiés : jeux à deux : deux adversaires eectuent alternativement des coups, chaque défaillance de

Plus en détail

La hiérarchie du système DNS

La hiérarchie du système DNS LA RÉSOLUTION DE NOMS 1. PRÉSENTATION DU SYSTÈME DNS 1.1 INTRODUCTION À LA RÉSOLUTION DE NOMS Pour pouvoir communiquer, chaque machine présente sur un réseau doit avoir un identifiant unique. Avec le protocole

Plus en détail

Algorithmique distribuée. Exclusion mutuelle

Algorithmique distribuée. Exclusion mutuelle Algorithmique distribuée Exclusion mutuelle Eric Cariou Master Technologies de l'internet 1 ère année Université de Pau et des Pays de l'adour Département Informatique Eric.Cariou@univ-pau.fr 1 Exclusion

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

Le client/serveur repose sur une communication d égal à égal entre les applications.

Le client/serveur repose sur une communication d égal à égal entre les applications. Table des matières LES PRINCIPES DE BASE... 1 Présentation distribuée-revamping...2 Présentation distante...3 Traitements distribués...3 données distantes-rd...4 données distribuées-rda distribué...4 L'ARCHITECTURE

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

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

GESTION DES PROCESSUS

GESTION DES PROCESSUS CHAPITRE 2 : GESTION DES PROCESSUS Objectifs spécifiques Connaître la notion de processus, Connaître les caractéristiques d un processus ainsi que son contexte Connaître la notion d interruptions et de

Plus en détail

Principes généraux de codage entropique d'une source. Cours : Compression d'images Master II: IASIG Dr. Mvogo Ngono Joseph

Principes généraux de codage entropique d'une source. Cours : Compression d'images Master II: IASIG Dr. Mvogo Ngono Joseph Principes généraux de codage entropique d'une source Cours : Compression d'images Master II: IASIG Dr. Mvogo Ngono Joseph Table des matières Objectifs 5 Introduction 7 I - Entropie d'une source 9 II -

Plus en détail

Cours Systèmes d exploitation 1

Cours Systèmes d exploitation 1 Cours Systèmes d exploitation 1 Achraf Othman Support du cours : www.achrafothman.net 1 Plan du cours Chapitre 1 : Gestion des processus Chapitre 2 : Ordonnancement des processus Chapitre 3 : La communication

Plus en détail

Le protocole TCP /IP

Le protocole TCP /IP Le protocole TCP /IP Définition d'une URL : URL : ( Uniform Ressource Locator ) Http:// www. wanadoo.fr / public / index.htm Protocole Nom d ordinateur Sous domaine Domaine racine répertoire Fichier Prococole

Plus en détail

Système. Introduction aux systèmes informatiques

Système. Introduction aux systèmes informatiques Introduction aux systèmes informatiques Système Un système est une collection organisée d'objets qui interagissent pour former un tout Objets = composants du système Des interconnexions (liens) entre les

Plus en détail

FileMaker Pro 14. Utilisation d'une Connexion Bureau à distance avec FileMaker Pro 14

FileMaker Pro 14. Utilisation d'une Connexion Bureau à distance avec FileMaker Pro 14 FileMaker Pro 14 Utilisation d'une Connexion Bureau à distance avec FileMaker Pro 14 2007-2015 FileMaker, Inc. Tous droits réservés. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, Californie 95054

Plus en détail

Licence STIC, Semestre 1 Algorithmique & Programmation 1

Licence STIC, Semestre 1 Algorithmique & Programmation 1 Licence STIC, Semestre 1 Algorithmique & Programmation 1 Exercices Alexandre Tessier 1 Introduction 2 instruction de sortie 3 expressions 4 variable informatique 5 séquence d instructions, trace Exercice

Plus en détail

LE PROBLEME DU FLOT MAXIMAL

LE PROBLEME DU FLOT MAXIMAL LE PROBLEME DU FLOT MAXIMAL I Exemple d introduction Deux châteaux d'eau alimentent 3 villes à travers un réseau de canalisations au sein duquel se trouvent également des stations de pompage. Les châteaux

Plus en détail

UNIVERSITE SAAD DAHLAB DE BLIDA

UNIVERSITE SAAD DAHLAB DE BLIDA Chapitre 5 :. Introduction aux méthodes par séparation et évaluation Les méthodes arborescentes ( Branch and Bound Methods ) sont des méthodes exactes d'optimisation qui pratiquent une énumération intelligente

Plus en détail

Rapport de stage. Simulation d'algorithmes auto-stabilisants

Rapport de stage. Simulation d'algorithmes auto-stabilisants Université Joseph Fourier Département Licence Sciences & Technologies Rapport de stage Simulation d'algorithmes auto-stabilisants DIAKITE Moussa Laboratoire d'accueil : Verimag Directeur du laboratoire

Plus en détail

Programmation avancée

Programmation avancée Programmation avancée Chapitre 1 : Complexité et les ABR (arbres binaires de recherche) 1 1 IFSIC Université de Rennes-1 M2Crypto, octobre 2011 Plan du cours 1 2 3 4 5 6 7 8 9 10 Algorithmes Définition

Plus en détail

Introduction à l'algorithmique Distribuée. Exclusion mutuelle

Introduction à l'algorithmique Distribuée. Exclusion mutuelle Introduction à l'algorithmique Distribuée Exclusion mutuelle Eric Cariou Université de Pau et des Pays de l'adour Département Informatique Eric.Cariou@univ-pau.fr 1 Exclusion mutuelle distribuée Exclusion

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

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

Complément C7 Infodauphine.com

Complément C7 Infodauphine.com Complément C7 Infodauphine.com Pourquoi se soucier des performances? L'utilisateur n'aime pas attendre Le timing peut-être critique Trading VBA est un outil de productivité La notion de temps d'exécution

Plus en détail

Introduction à la programmation en variables entières Cours 3

Introduction à la programmation en variables entières Cours 3 Introduction à la programmation en variables entières Cours 3 F. Clautiaux francois.clautiaux@math.u-bordeaux1.fr Université Bordeaux 1 Bât A33 - Bur 272 Sommaire Notion d heuristique Les algorithmes gloutons

Plus en détail

Partie I : Automates et langages

Partie I : Automates et langages 2 Les calculatrices sont interdites. N.B. : Le candidat attachera la plus grande importance à la clarté, à la précision et à la concision de la rédaction. Si un candidat est amené à repérer ce qui peut

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

ARCHITECTURES DES SYSTÈME DE BASE DE DONNÉES. Cours Administration des Bases de données M Salhi

ARCHITECTURES DES SYSTÈME DE BASE DE DONNÉES. Cours Administration des Bases de données M Salhi ARCHITECTURES DES SYSTÈME DE BASE DE DONNÉES Cours Administration des Bases de données M Salhi Architectures des Système de base de données Systèmes centralisés et client-serveur Server System Architectures

Plus en détail

Codage des données en machine.

Codage des données en machine. Codage des données en machine. 1 Entiers naturels Changements de base Codage en machine 2 Entiers relatifs : codage en complément à 2 Dénition Addition et calcul de l'opposé en complément à 2 3 Représentation

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

Introduction aux systèmes d exploitation

Introduction aux systèmes d exploitation Introduction aux systèmes d exploitation Le système d exploitation est un ensemble de logiciels qui pilotent la partie matérielle d un ordinateur. Les principales ressources gérées par un système d exploitation

Plus en détail

Gestion du processeur central

Gestion du processeur central Chapitre II Gestion du processeur central 1. Introduction Evolution des systèmes informatiques 1.1- Premier système : Le programmeur/opérateur doit écrire un programme ensuite le faire fonctionner directement

Plus en détail

Gestion de données à large échelle. Anne Doucet LIP6 Université Paris 6

Gestion de données à large échelle. Anne Doucet LIP6 Université Paris 6 Gestion de données à large échelle Anne Doucet LIP6 Université Paris 6 1 Plan Contexte Les réseaux P2P Non structurés Structurés Hybrides Localisation efficace et Interrogation complète et exacte des données.

Plus en détail

Présentation. Logistique. Résumé de la 1e Partie. Mise en place du système

Présentation. Logistique. Résumé de la 1e Partie. Mise en place du système Présentation Diapo01 Je m appelle Michel Canneddu. Je développe avec 4D depuis 1987 et j exerce en tant qu indépendant depuis 1990. Avant de commencer, je tiens à remercier mes parrains Jean-Pierre MILLIET,

Plus en détail

Modèle spagetthi et solution EAI

Modèle spagetthi et solution EAI EAI Définition L'EAI est une notion ancienne mais toujours d'actualité. En effet, le besoin de faire communiquer des applications développées à des moments différents, dans des technologies différentes

Plus en détail

Module 10 : Fonctions d'exploration et de domaine sur un inter-réseau IP

Module 10 : Fonctions d'exploration et de domaine sur un inter-réseau IP Module 10 : Fonctions d'exploration et de domaine sur un inter-réseau IP 0RGXOH#43#=#)RQFWLRQV#G*H[SORUDWLRQ#HW#GH#GRPDLQH#VXU#XQ#LQWHU0UpVHDX#,3# # 56: # 3UpVHQWDWLRQ#JpQpUDOH 'RQQHU#XQ#DSHUoX#GHV VXMHWV#HW#GHV#REMHFWLIV#GH#FH

Plus en détail

Algorithmique Distribuée Communication de groupes

Algorithmique Distribuée Communication de groupes Algorithmique Distribuée Communication de groupes Laurent PHILIPPE Master 2 Informatique UFR des Sciences et Techniques 2013/2014 Laurent PHILIPPE Communication de groupes 1 / 58 Les outils Les groupes

Plus en détail

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

Placement de centres logistiques

Placement de centres logistiques Master 1 - Spécialité Androide Année 2014/2015 Module RP Résolution de Problèmes Projet Placement de centres logistiques On considère dans ce projet la résolution du problème de placement de centres logistiques

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

Théorie des graphes. Introduction. Programme de Terminale ES Spécialité. Résolution de problèmes à l aide de graphes. Préparation CAPES UCBL

Théorie des graphes. Introduction. Programme de Terminale ES Spécialité. Résolution de problèmes à l aide de graphes. Préparation CAPES UCBL Introduction Ces quelques pages ont pour objectif de vous initier aux notions de théorie des graphes enseignées en Terminale ES. Le programme de Terminale (voir ci-après) est construit sur la résolution

Plus en détail

RAPPORT DU PREMIER MINI PROJET «FORUM DE CHAT» Novembre 2005

RAPPORT DU PREMIER MINI PROJET «FORUM DE CHAT» Novembre 2005 Oussama ELKACHOINDI Wajdi MEHENNI RAPPORT DU PREMIER MINI PROJET «FORUM DE CHAT» Novembre 2005 Sommaire I. Préliminaire : Notice d exécution et mode opératoire...4 II. Architecture globale de l application...5

Plus en détail

Algorithmique IN102 TD 3

Algorithmique IN102 TD 3 Algorithmique IN10 TD 16 décembre 005 Exercice 1 Clairement, il existe des arbres de hauteur h à h + 1 éléments : il sut pour cela que leurs n uds internes aient au plus un ls non vide. On a alors un arbre

Plus en détail

Couples de variables aléatoires discrètes

Couples de variables aléatoires discrètes Couples de variables aléatoires discrètes ECE Lycée Carnot mai Dans ce dernier chapitre de probabilités de l'année, nous allons introduire l'étude de couples de variables aléatoires, c'est-à-dire l'étude

Plus en détail

Introduction aux Systèmes Distribués. Gestion du temps & état global dans un système distribué

Introduction aux Systèmes Distribués. Gestion du temps & état global dans un système distribué Introduction aux Systèmes Distribués Licence Informatique 3 ème année Gestion du temps & état global dans un système distribué Eric Cariou Université de Pau et des Pays de l'adour Département Informatique

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

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

Modélisation et résolution du problème de transport de gaz: application au réseau principal français

Modélisation et résolution du problème de transport de gaz: application au réseau principal français Modélisation et résolution du problème de transport de gaz: application au réseau principal français Présentation des travaux de thèse GDF SUEZ - INPT - ENSIACET - LGC EMN 24 mars 2011 Le gaz en Europe

Plus en détail

L3 ASR Projet 1: DNS. Rapport de Projet

L3 ASR Projet 1: DNS. Rapport de Projet L3 ASR Projet 1: DNS Rapport de Projet Table des matières I. Maquette de travail...1 II. Configuration des machines...2 III. Type de zone...3 IV. Délégation de zone...3 V. Suffixes DNS...4 VI. Mise en

Plus en détail

Compte-rendu de projet de Cryptographie

Compte-rendu de projet de Cryptographie Compte-rendu de projet de Cryptographie Chirement/Déchirement de texte, d'images de sons et de vidéos LAMBERT VELLER Sylvain M1 STIC Université de Bourgogne 2010-2011 Reponsable : Mr Pallo Table des matières

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

Projet informatique «Voyageur de commerce» Résolution approchée par algorithme génétique du problème du voyageur de commerce

Projet informatique «Voyageur de commerce» Résolution approchée par algorithme génétique du problème du voyageur de commerce Année 2007-2008 Projet informatique «Voyageur de commerce» Résolution approchée par algorithme génétique du problème du voyageur de commerce B. Monsuez Projet informatique «Voyageur de commerce» Résolution

Plus en détail

Introduction aux applications réparties

Introduction aux applications réparties Introduction aux applications réparties Noël De Palma Projet SARDES INRIA Rhône-Alpes http://sardes.inrialpes.fr/~depalma Noel.depalma@inrialpes.fr Applications réparties Def : Application s exécutant

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

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

Programmation récursive

Programmation récursive Année 2004-2005 F. Lévy IUT De Villetaneuse Dép t informatique Cours d'algorithmique 2 éme Année Cours 8 Programmation récursive 1. Qu'est-ce que la programmation récursive Définition : la programmation

Plus en détail

Rapport d activité. Mathieu Souchaud Juin 2007

Rapport d activité. Mathieu Souchaud Juin 2007 Rapport d activité Mathieu Souchaud Juin 2007 Ce document fait la synthèse des réalisations accomplies durant les sept premiers mois de ma mission (de novembre 2006 à juin 2007) au sein de l équipe ScAlApplix

Plus en détail

Projet Système Distribué : Implémentation d'un serveur générateur de certicats. BEUQUE Eric, CORNEVAUX Sébastien, MOUTENET Cyril 13 janvier 2009

Projet Système Distribué : Implémentation d'un serveur générateur de certicats. BEUQUE Eric, CORNEVAUX Sébastien, MOUTENET Cyril 13 janvier 2009 Projet Système Distribué : Implémentation d'un serveur générateur de certicats BEUQUE Eric, CORNEVAUX Sébastien, MOUTENET Cyril 13 janvier 2009 1 Table des matières 1 Sujet 3 2 Analyse 4 3 Création clé

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

TP - Modélisation et optimisation des systèmes complexes

TP - Modélisation et optimisation des systèmes complexes Master Informatique 1ere année (M1) Année 2010-2011 TP - Modélisation et optimisation des systèmes complexes Résolution du problème d'aectation généralisé par relaxation lagrangienne 1 Introduction Le

Plus en détail

Algorithmique Distribuée Introduction et Contexte

Algorithmique Distribuée Introduction et Contexte Algorithmique Distribuée Introduction et Contexte Laurent PHILIPPE Master 2 Informatique UFR des Sciences et Techniques 2013/2014 Laurent PHILIPPE Chapitre 1: Introduction et Contexte 1 / 67 Introduction

Plus en détail

TCSMP - Time-Cost Stamped Mail Protocol

TCSMP - Time-Cost Stamped Mail Protocol Projet de Master Informatique M1 Université Paris-Est Marne-la-Vallée Session TCSMP Time-Cost Stamped Mail Protocol TCSMP - Time-Cost Stamped Mail Protocol Documentation utilisateur,,, Introduction...

Plus en détail

Druais Cédric École Polytechnique de Montréal. Résumé

Druais Cédric École Polytechnique de Montréal. Résumé Étude de load balancing par un réseau de neurones de types HME (Hierarchical Mixture of s). Druais Cédric École Polytechnique de Montréal Résumé Cet article tente d introduire le principe de load balancing

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

Sujet Projets 2 nd Semestre

Sujet Projets 2 nd Semestre Sujet Projets 2 nd Semestre Seuls les appels systèmes vus en cours sont autorisés. L usage d autres fonctions doit impérativement être validé par l enseignant. La date d ouverture pour l assignation de

Plus en détail

BE de programmation MPI-1 par envois de messages bloquants

BE de programmation MPI-1 par envois de messages bloquants BE-MPI-1envois de messages bloquants Page 1 of 3 01/03/2010 Calcul parallèle et distribué, et Grilles de calculs Cours de 3ème année SI à Supélec BE de programmation MPI-1 par envois de messages bloquants

Plus en détail

Hyper-V et SC Virtual Machine Manager sous Windows Server 2008 R2

Hyper-V et SC Virtual Machine Manager sous Windows Server 2008 R2 186 Hyper-V et SC Virtual Machine Manager sous Windows Server 2008 R2 L'utilisation des fonctionnalités de haute disponibilité intégrées aux applications, L'ajout de solutions tierces. 1.1 Windows Server

Plus en détail

Problème du voyageur de commerce par algorithme génétique

Problème du voyageur de commerce par algorithme génétique Problème du voyageur de commerce par algorithme génétique 1 Problème du voyageur de commerce Le problème du voyageur de commerce, consiste en la recherche d un trajet minimal permettant à un voyageur de

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

SAS BI DASHBOARD 4.3 : POUR LE MEILLEUR ET POUR LE FILTRE

SAS BI DASHBOARD 4.3 : POUR LE MEILLEUR ET POUR LE FILTRE SAS BI DASHBOARD 4.3 : POUR LE MEILLEUR ET POUR LE FILTRE En tant qu outils d aide à la décision, les tableaux de bord doivent répondre rapidement. Pour participer à cet effort de réactivité en termes

Plus en détail

Processus et gestion de processus

Processus et gestion de processus Processus et gestion de processus et gestion de processus Processus Définition Modélisation Descripteur État Création Destruction Allocation de ressources UNIX Processus UNIX - Modèle Création Terminaison

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

Architecture des ordinateurs. Optimisation : pipeline. Pipeline (I) Pipeline (II) Exemple simplifié : Instructions de type R

Architecture des ordinateurs. Optimisation : pipeline. Pipeline (I) Pipeline (II) Exemple simplifié : Instructions de type R Architecture des ordinateurs Licence Informatique - Université de Provence Jean-Marc Talbot Optimisation : pipeline jtalbot@cmi.univ-mrs.fr L3 Informatique - Université de Provence () Architecture des

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

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

Introduction. La gestion des qualités de services dans Internet. La garantie de QoS. Exemple

Introduction. La gestion des qualités de services dans Internet. La garantie de QoS. Exemple Introduction Aujourd hui les applications (en particulier multimédia) nécessitent des qualités de service de natures très différentes La gestion des qualités de services dans Internet Exemples: Transfert

Plus en détail

Programmation C++ (débutant)/les tableaux statiques

Programmation C++ (débutant)/les tableaux statiques Programmation C++ (débutant)/les tableaux statiques 1 Programmation C++ (débutant)/les tableaux statiques Le cours du chapitre 6 : les tableaux statiques Les tableaux Une variable entière de type int ne

Plus en détail

Analyse et mesure de performances du calcul distribué

Analyse et mesure de performances du calcul distribué Analyse et mesure de performances du calcul distribué Mohsine Eleuldj Département Génie Informatique, EMI eleuldj@emi.ac.ma CruCID Workshop, EMI, Rabat, 5 au 7 juillet 1999 Motivation Types d applications

Plus en détail

M1 MIAGE Option IFD Data Mining et Parallélisme

M1 MIAGE Option IFD Data Mining et Parallélisme M1 MIAGE Option IFD Data Mining et Parallélisme Alexandre Termier 2011-2012 S2 1 / 24 Besoin ˆ Data Mining doit... traiter de gros volumes de données pouvoir eectuer des analyses complexes (gros calculs)

Plus en détail

BEP Systèmes Electroniques Industriels et Domestiques

BEP Systèmes Electroniques Industriels et Domestiques Fiche de procédure : Créer un réseau domestique sous Windows XP I) Préambule Cette fiche méthode a été créée avec l'objectif de donner aux débutants la possibilité de créer un réseau domestique sous Windows

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

Architecture Client/Serveur. andreu@lirmm.fr 1

Architecture Client/Serveur. andreu@lirmm.fr 1 Architecture Client/Serveur andreu@lirmm.fr 1 Qu'est-ce qu'un serveur? un «logiciel serveur» offre un service sur le réseau, le «serveur» est la machine sur laquelle s'exécute le logiciel serveur, le serveur

Plus en détail

Parallélisme et Répartition

Parallélisme et Répartition Parallélisme et Répartition Master Info Françoise Baude Université de Nice Sophia-Antipolis UFR Sciences Département Informatique baude@unice.fr web du cours : deptinfo.unice.fr/~baude Septembre 2009 Chapitre

Plus en détail

Gestion de projet - les chaînes critiques

Gestion de projet - les chaînes critiques Gestion de projet - les chaînes critiques GÉRARD CASANOVA - DENIS ABÉCASSIS Paternité - Pas d'utilisation Commerciale - Pas de Modification : http://creativecommons.org/licenses/by-nc-nd/2.0/fr/ Table

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

est diagonale si tous ses coefficients en dehors de la diagonale sont nuls.

est diagonale si tous ses coefficients en dehors de la diagonale sont nuls. Diagonalisation des matrices http://www.math-info.univ-paris5.fr/~ycart/mc2/node2.html Sous-sections Matrices diagonales Valeurs propres et vecteurs propres Polynôme caractéristique Exemples Illustration

Plus en détail

Condensation dynamique de modèle par sousstructuration. Fascicule u2.07 : Méthodes pour réduire la taille de la modélisation

Condensation dynamique de modèle par sousstructuration. Fascicule u2.07 : Méthodes pour réduire la taille de la modélisation Titre : Condensation dynamique de modèle par sous- structu[...] Date : 24/07/2015 Page : 1/7 Condensation dynamique de modèle par sousstructuration statique Résumé : Ce document décrit un mode d utilisation

Plus en détail

Le Ro le Hyper V Premie re Partie Configuration et Prise en main du gestionnaire Hyper-V

Le Ro le Hyper V Premie re Partie Configuration et Prise en main du gestionnaire Hyper-V Le Ro le Hyper V Premie re Partie Configuration et Prise en main du gestionnaire Hyper-V Microsoft France Division DPE Table des matières Présentation... 2 Objectifs... 2 Pré requis... 2 Quelles sont les

Plus en détail

TaskMapper Gestion de projet : Analyse

TaskMapper Gestion de projet : Analyse Gestion de projet : Analyse P. Combier, V. Comiti, M. Hubert, R. Jamet, M. Le Du, P. Lelouette, J. L Hermitte, A. Morvan, N. Premillieu, L. Ren, C. Souti, F. Tesniere, Y. Zhao Encadrés par S. Derrien 11

Plus en détail

Table des matières. Cours Système d Exploitation. Chapitre II : Gestion des processus

Table des matières. Cours Système d Exploitation. Chapitre II : Gestion des processus Chapitre II : Gestion des processus Table des matières I Processus et contexte d un processus 2 II État d un processus 3 III Système d exploitation multi-tâches et parallélisme 3 IV Problèmes dues au multi-tâches

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

Master Informatique. Master Informatique 1ère année 1 er sem. Anonymat : Numéro à coller. Examen Réparti 2 : ARES 2010-2011

Master Informatique. Master Informatique 1ère année 1 er sem. Anonymat : Numéro à coller. Examen Réparti 2 : ARES 2010-2011 Master Informatique ère année er sem. Anonymat : Numéro à coller Master Informatique ère année er sem. Examen Réparti : ARES 0- Durée totale: h00 Autorisé: Une feuille A4 manuscrite Non autorisés: Autres

Plus en détail

Calculs parallèles et Distribués. Benmoussa Yahia Université M hamed Bougara de Boumerdès yahia.benmoussa@gmail.com

Calculs parallèles et Distribués. Benmoussa Yahia Université M hamed Bougara de Boumerdès yahia.benmoussa@gmail.com Calculs parallèles et Distribués Benmoussa Yahia Université M hamed Bougara de Boumerdès yahia.benmoussa@gmail.com Calculs parallèles et Distribués Introduction Parallélisation sur mémoire distribuée.

Plus en détail