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

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

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

Transcription

1 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 d Olivier BEAUMONT et d Yves ROBERT

2 Parallélisme et nouvelles plates-formes de calcul Pour répondre à une forte demande de calcul : utilisation simultanée de plusieurs ressources de calcul Évolution de plates-formes de calcul : super-calculateurs, grappes de calcul (cluster) moins coûteuses : réseau de stations grilles de calcul (grappes de grappes) Introduction 2/ 55

3 Parallélisme et nouvelles plates-formes de calcul Pour répondre à une forte demande de calcul : utilisation simultanée de plusieurs ressources de calcul Évolution de plates-formes de calcul : super-calculateurs, grappes de calcul (cluster) moins coûteuses : réseau de stations grilles de calcul (grappes de grappes) Introduction 2/ 55

4 Parallélisme et nouvelles plates-formes de calcul Pour répondre à une forte demande de calcul : utilisation simultanée de plusieurs ressources de calcul Évolution de plates-formes de calcul : super-calculateurs, grappes de calcul (cluster) moins coûteuses : réseau de stations grilles de calcul (grappes de grappes) Introduction 2/ 55

5 Parallélisme et nouvelles plates-formes de calcul Pour répondre à une forte demande de calcul : utilisation simultanée de plusieurs ressources de calcul Évolution de plates-formes de calcul : super-calculateurs, grappes de calcul (cluster) moins coûteuses : réseau de stations grilles de calcul (grappes de grappes) Introduction 2/ 55

6 Paralle lisme et nouvelles plates-formes de calcul Pour re pondre a une forte demande de calcul : utilisation simultane e de plusieurs ressources de calcul E volution de plates-formes de calcul : super-calculateurs, grappes de calcul (cluster) moins cou teuses : re seau de stations grilles de calcul (grappes de grappes) Introduction 2/ 55

7 Parallélisme et nouvelles plates-formes de calcul Pour répondre à une forte demande de calcul : utilisation simultanée de plusieurs ressources de calcul Évolution de plates-formes de calcul : super-calculateurs, grappes de calcul (cluster) moins coûteuses : réseau de stations grilles de calcul (grappes de grappes) tendances : hétérogénéité et dynamicité Introduction 2/ 55

8 Techniques traditionnelles d ordonnancement Modélisation : Applications : graphe de tâches Plate-forme de calcul : processeurs homogènes ou hétérogènes réseau de communication avec ou sans congestion Objectifs : X = D X allocation alloc(t ) : processeur traitant la tâche T ,5 15 C = A B D = C ,3 V = D T Y ordonnancement σ(t ) : date de début d exécution de T. temps d exécution total (Makespan) optimal Résultats : problème NP-complet pour des tâches indépendantes algorithmes d approximation (heuristiques de liste) Introduction 3/ 55

9 Techniques traditionnelles d ordonnancement Modélisation : Applications : graphe de tâches Plate-forme de calcul : processeurs homogènes ou hétérogènes réseau de communication avec ou sans congestion Objectifs : allocation alloc(t ) : processeur traitant la tâche T ordonnancement σ(t ) : date de début d exécution de T. temps d exécution total (Makespan) optimal Résultats : problème NP-complet pour des tâches indépendantes algorithmes d approximation (heuristiques de liste) P1 P2 P3 P4 Introduction 3/ 55

10 Techniques traditionnelles d ordonnancement Modélisation : Applications : graphe de tâches Plate-forme de calcul : processeurs homogènes ou hétérogènes réseau de communication avec ou sans congestion Objectifs : allocation alloc(t ) : processeur traitant la tâche T ordonnancement σ(t ) : date de début d exécution de T. temps d exécution total (Makespan) optimal P1 P2 P3 temps Résultats : problème NP-complet pour des tâches indépendantes algorithmes d approximation (heuristiques de liste) Introduction 3/ 55

11 Techniques traditionnelles d ordonnancement Modélisation : Applications : graphe de tâches Plate-forme de calcul : processeurs homogènes ou hétérogènes réseau de communication avec ou sans congestion Objectifs : allocation alloc(t ) : processeur traitant la tâche T ordonnancement σ(t ) : date de début d exécution de T. temps d exécution total (Makespan) optimal Résultats : problème NP-complet pour des tâches indépendantes algorithmes d approximation (heuristiques de liste) Introduction 3/ 55

12 Conception d ordonnancements efficaces Algorithme d approximation exemple : 3/2-approximation optimal : 2 secondes 3 secondes optimal : 2 heures 3 heures Algorithme asymptotiquement optimal exemple : T opt + O(1) optimal : 2 secondes 5 minutes + 2 secondes optimal : 2 heures 2 heures + 5 minutes On se concentre sur un seul des problèmes soulevés : concevoir des ordonnancements efficaces pour les plates-formes hétérogènes à grande échelle. On s intéresse à des plates-formes statiques. La dynamicité des plates-formes émergentes reste à prendre en compte... Introduction 4/ 55

13 Conception d ordonnancements efficaces Algorithme d approximation exemple : 3/2-approximation optimal : 2 secondes 3 secondes optimal : 2 heures 3 heures Algorithme asymptotiquement optimal exemple : T opt + O(1) optimal : 2 secondes 5 minutes + 2 secondes optimal : 2 heures 2 heures + 5 minutes On se concentre sur un seul des problèmes soulevés : concevoir des ordonnancements efficaces pour les plates-formes hétérogènes à grande échelle. On s intéresse à des plates-formes statiques. La dynamicité des plates-formes émergentes reste à prendre en compte... Introduction 4/ 55

14 Introduction au régime permanent L exemple du routage de paquets

15 Routage de paquets Problème P 3 P 5 P 1 P 2 P 4 D. Bertsimas & D. Gamarnik, «Asymptotically optimal algorithm for job shop scheduling and packet routing» Journal of Algorithms, Plusieurs ensembles de paquets à acheminer depuis leur source jusqu à leur destination Routage non fixé Les paquets d un même ensemble peuvent emprunter des chemins différents Un paquet parcourt une arête en temps 1 Une arête transporte un seul paquet à chaque instant Introduction Routage de paquets 6/ 55

16 Routage de paquets Problème P 3 P 5 P 1 P 2 P 4 D. Bertsimas & D. Gamarnik, «Asymptotically optimal algorithm for job shop scheduling and packet routing» Journal of Algorithms, Plusieurs ensembles de paquets à acheminer depuis leur source jusqu à leur destination Routage non fixé Les paquets d un même ensemble peuvent emprunter des chemins différents Un paquet parcourt une arête en temps 1 Une arête transporte un seul paquet à chaque instant Introduction Routage de paquets 6/ 55

17 Routage de paquets P 3 P 5 P 1 P 4 P 2 n k,l i,j : nombre total de paquets acheminés de k à l, transmis par l arête (i, j). Congestion : C i,j = (k,l) n k,l >0 n k,l i,j C max = max i,j C i,j C max : borne inférieure sur le temps total d exécution Introduction Routage de paquets 7/ 55

18 Routage de paquets P 3 P 5 P 1 P 4 P 2 n k,l i,j : nombre total de paquets acheminés de k à l, transmis par l arête (i, j). Congestion : C i,j = (k,l) n k,l >0 n k,l i,j C max = max i,j C i,j C max : borne inférieure sur le temps total d exécution Introduction Routage de paquets 7/ 55

19 Routage de paquets P 3 P 5 P 1 P 4 P 2 n k,l i,j : nombre total de paquets acheminés de k à l, transmis par l arête (i, j). Congestion : C i,j = (k,l) n k,l >0 n k,l i,j C max = max i,j C i,j C max : borne inférieure sur le temps total d exécution Introduction Routage de paquets 7/ 55

20 Routage de paquets P 3 P 5 P 1 P 4 P 2 n k,l i,j : nombre total de paquets acheminés de k à l, transmis par l arête (i, j). Congestion : C i,j = (k,l) n k,l >0 n k,l i,j C max = max i,j C i,j C max : borne inférieure sur le temps total d exécution Introduction Routage de paquets 7/ 55

21 Routage de paquets P 3 P 5 P 1 P 4 P 2 n k,l i,j : nombre total de paquets acheminés de k à l, transmis par l arête (i, j). Congestion : C i,j = (k,l) n k,l >0 n k,l i,j C max = max i,j C i,j C max : borne inférieure sur le temps total d exécution Introduction Routage de paquets 7/ 55

22 Routage de paquets P 3 P 5 P 1 P 4 P 2 n k,l i,j : nombre total de paquets acheminés de k à l, transmis par l arête (i, j). Congestion : C i,j = (k,l) n k,l >0 n k,l i,j C max = max i,j C i,j C max : borne inférieure sur le temps total d exécution Introduction Routage de paquets 7/ 55

23 Routage de paquets P 3 P 5 P 1 P 4 P 2 n k,l i,j : nombre total de paquets acheminés de k à l, transmis par l arête (i, j). Congestion : C i,j = (k,l) n k,l >0 n k,l i,j C max = max i,j C i,j C max : borne inférieure sur le temps total d exécution Introduction Routage de paquets 7/ 55

24 Routage de paquets P 3 P 5 P 1 P 4 P 2 n k,l i,j : nombre total de paquets acheminés de k à l, transmis par l arête (i, j). Congestion : C i,j = (k,l) n k,l >0 n k,l i,j C max = max i,j C i,j C max : borne inférieure sur le temps total d exécution Introduction Routage de paquets 7/ 55

25 Routage de paquets P 3 P 5 P 1 P 4 P 2 n k,l i,j : nombre total de paquets acheminés de k à l, transmis par l arête (i, j). Congestion : C i,j = (k,l) n k,l >0 n k,l i,j C max = max i,j C i,j C max : borne inférieure sur le temps total d exécution Introduction Routage de paquets 7/ 55

26 Routage de paquets P 3 P 5 P 1 P 4 P 2 n k,l i,j : nombre total de paquets acheminés de k à l, transmis par l arête (i, j). Congestion : C i,j = (k,l) n k,l >0 n k,l i,j C max = max i,j C i,j C max : borne inférieure sur le temps total d exécution Introduction Routage de paquets 7/ 55

27 Routage de paquets P 3 P 5 P 1 P 4 P 2 n k,l i,j : nombre total de paquets acheminés de k à l, transmis par l arête (i, j). Congestion : C i,j = (k,l) n k,l >0 n k,l i,j C max = max i,j C i,j C max : borne inférieure sur le temps total d exécution Introduction Routage de paquets 7/ 55

28 Routage de paquets P 3 P 5 P 1 P 4 P 2 n k,l i,j : nombre total de paquets acheminés de k à l, transmis par l arête (i, j). Congestion : C i,j = (k,l) n k,l >0 n k,l i,j C max = max i,j C i,j C max : borne inférieure sur le temps total d exécution Introduction Routage de paquets 7/ 55

29 Routage de paquets P 3 P 5 P 1 P 4 P 2 n k,l i,j : nombre total de paquets acheminés de k à l, transmis par l arête (i, j). Congestion : C i,j = (k,l) n k,l >0 n k,l i,j C max = max i,j C i,j C max : borne inférieure sur le temps total d exécution Introduction Routage de paquets 7/ 55

30 Routage de paquets P 3 P 5 P 1 P 4 P 2 n k,l i,j : nombre total de paquets acheminés de k à l, transmis par l arête (i, j). Congestion : C i,j = (k,l) n k,l >0 n k,l i,j C max = max i,j C i,j C max : borne inférieure sur le temps total d exécution Introduction Routage de paquets 7/ 55

31 Routage de paquets P 3 P 5 P 1 P 4 P 2 n k,l i,j : nombre total de paquets acheminés de k à l, transmis par l arête (i, j). Congestion : C i,j = (k,l) n k,l >0 n k,l i,j C max = max i,j C i,j C max : borne inférieure sur le temps total d exécution Introduction Routage de paquets 7/ 55

32 Routage de paquets P 3 P 5 P 1 P 4 P 2 n k,l i,j : nombre total de paquets acheminés de k à l, transmis par l arête (i, j). Congestion : C i,j = (k,l) n k,l >0 n k,l i,j C max = max i,j C i,j C max : borne inférieure sur le temps total d exécution Introduction Routage de paquets 7/ 55

33 Routage de paquets Équations 1/2 P k P k 1 Paquets émis par une source : j (k,j) A 2 Paquets reçus par une destination : 3 Loi de conservation (nœud relais i) : i (i,j) A n k,l i,j = i (j,i) A n k,l j,i n k,l k,j = nk,l i (i,l) A n k,l i,l = n k,l (k, l), j k, j l Introduction Routage de paquets 8/ 55

34 Routage de paquets Équations 1/2 P k Pl 1 Paquets émis par une source : j (k,j) A 2 Paquets reçus par une destination : 3 Loi de conservation (nœud relais i) : i (i,j) A n k,l i,j = i (j,i) A n k,l j,i n k,l k,j = nk,l i (i,l) A n k,l i,l = n k,l (k, l), j k, j l Introduction Routage de paquets 8/ 55

35 Routage de paquets Équations 1/2 P i 1 Paquets émis par une source : j (k,j) A 2 Paquets reçus par une destination : 3 Loi de conservation (nœud relais i) : i (i,j) A n k,l i,j = i (j,i) A n k,l j,i n k,l k,j = nk,l i (i,l) A n k,l i,l = n k,l (k, l), j k, j l Introduction Routage de paquets 8/ 55

36 Routage de paquets Équations 2/2 4 Congestion C i,j = (k,l) n k,l >0 nk,l i,j 5 Fonction objective : C max C i,j, i, j Minimiser C max Programme linéaire en rationnels : résolu en temps polynomial Introduction Routage de paquets 9/ 55

37 Algorithme de routage 1 Calculer une solution optimale C max, n k,l i,j 2 Ordonnancement périodique : du programme linéaire On pose Ω = Cmax On utilise Cmax Ω périodes de durée Ω Pendant chaque période, l arête (i, j) transmet (au plus) n k,l m k,l i,j = i,j Ω paquets de k à l C max 3 Terminaison : on traite séquentiellement les paquets résiduels Ordonnancement valide, asymptotiquement optimal : C max C C max + O( C max ) Introduction Routage de paquets 10/ 55

38 Étude du régime permanent Principe : Relaxation de la fonction objective (temps d exécution débit) Nombres rationnels de paquets dans le programme linéaire Construction d un ordonnancement périodique Grand nombre de périodes obtention d un régime permanent Intérêt : Ordonnancement asymptotiquement optimal, adapté à : grands volumes de données applications constituées d un grand nombre de tâches indépendantes Permet aussi d obtenir une description plus compacte de l ordonnancement : période, décrite par intervalles au lieu de la route empruntée par chaque paquet Introduction Routage de paquets 11/ 55

39 Diffusion en régime permanent Position du problème et bibliographie Résolution efficace sous le modèle bidirectionnel Complexité sous le modèle unidirectionnel Heuristiques à un seul arbre Expérimentations

40 Diffusion en régime permanent Position du problème et bibliographie Résolution efficace sous le modèle bidirectionnel Complexité sous le modèle unidirectionnel Heuristiques à un seul arbre Expérimentations

41 Communications collectives en régime permanent Communication collective : opération de communication faisant intervenir plusieurs interlocuteurs Hypothèse de régime permanent : communications pipelinées un grand nombre de messages suivant le même schéma diffusion : distribution : multicast : réduction : Diffusion en régime permanent Introduction 13/ 55

42 Communications collectives en régime permanent Communication collective : opération de communication faisant intervenir plusieurs interlocuteurs Hypothèse de régime permanent : communications pipelinées un grand nombre de messages suivant le même schéma diffusion : distribution : multicast : réduction : Diffusion en régime permanent Introduction 13/ 55

43 Bibliographie Diffusion sur des architectures spécialisées homogènes (utilisation d arbres de diffusion concurrents) grille, tore hypercube graphe de De Bruijn réseaux pair-à-pair Topologies hétérogènes : optimisation d une diffusion bibliothèques de communication pour environnements hétérogènes (ECO, MagPIe, MPICH-G2,... ) NB : en optimisant le débit d une série de diffusions, on résout de façon asymptotique le problème de la diffusion d un message de grande taille Diffusion en régime permanent Introduction 14/ 55

44 Modèle de communications plate-forme : graphe G = (V, E, c) P 1, P 2,..., P n : machines (processeurs) P source (possède les données à diffuser) (P j, P k ) E : lien de communication enter pondération sur les arêtes : c(j, k)= temps d un transfert d un message de taille 1 de P j à P j congestion au niveau d une machine : modèle de communication un-port, avec 2 variantes : 10 P 4 P P bidirectionnel : un processeur peut émettre et reçoit un message à la fois unidirectionnel : un processeur peut émettre ou reçoit un message à la fois P 2 Diffusion en régime permanent Introduction 15/ 55

45 Modèle de communications plate-forme : graphe G = (V, E, c) P 1, P 2,..., P n : machines (processeurs) P source (possède les données à diffuser) (P j, P k ) E : lien de communication enter pondération sur les arêtes : c(j, k)= temps d un transfert d un message de taille 1 de P j à P j congestion au niveau d une machine : modèle de communication un-port, avec 2 variantes : bidirectionnel : un processeur peut émettre et reçoit un message à la fois unidirectionnel : un processeur peut émettre ou reçoit un message à la fois P 4 P 1 P 2 P 3 Diffusion en régime permanent Introduction 15/ 55

46 Modèle de communications plate-forme : graphe G = (V, E, c) P 1, P 2,..., P n : machines (processeurs) P source (possède les données à diffuser) (P j, P k ) E : lien de communication enter pondération sur les arêtes : c(j, k)= temps d un transfert d un message de taille 1 de P j à P j congestion au niveau d une machine : modèle de communication un-port, avec 2 variantes : bidirectionnel : un processeur peut émettre et reçoit un message à la fois P 4 P 1 bidirectionnel unidirectionnel : un processeur peut émettre ou reçoit un message à la fois P 2 P 3 Diffusion en régime permanent Introduction 15/ 55

47 Modèle de communications plate-forme : graphe G = (V, E, c) P 1, P 2,..., P n : machines (processeurs) P source (possède les données à diffuser) (P j, P k ) E : lien de communication enter pondération sur les arêtes : c(j, k)= temps d un transfert d un message de taille 1 de P j à P j congestion au niveau d une machine : modèle de communication un-port, avec 2 variantes : bidirectionnel : un processeur peut émettre et reçoit un message à la fois P 4 P 1 unidirectionnel unidirectionnel : un processeur peut émettre ou reçoit un message à la fois P 2 P 3 Diffusion en régime permanent Introduction 15/ 55

48 Diffusion en régime permanent Position du problème et bibliographie Résolution efficace sous le modèle bidirectionnel Complexité sous le modèle unidirectionnel Heuristiques à un seul arbre Expérimentations

49 Approche par programmation linéaire Adaptation de la méthode de Bertsimas et Gamarnik Quantités moyennes de messages transmis par unité de temps Débit = quantité moyenne reçue par chaque destination, par unité de temps Une source / plusieurs destinations On distingue tout de même la destination des messages : send(p i P j, k) : Nombre moyen de messages envoyés à destination de k, traversant l arête (P i, P j ) en une unité de temps. Diffusion en régime permanent Modèle bidirectionnel 17/ 55

50 Approche par programmation linéaire Adaptation de la méthode de Bertsimas et Gamarnik Quantités moyennes de messages transmis par unité de temps Débit = quantité moyenne reçue par chaque destination, par unité de temps Une source / plusieurs destinations On distingue tout de même la destination des messages : send(p i P j, k) : Nombre moyen de messages envoyés à destination de k, traversant l arête (P i, P j ) en une unité de temps. Diffusion en régime permanent Modèle bidirectionnel 17/ 55

51 Contraintes On peut écrire les mêmes contraintes que pour le routage de paquets : tous les messages sont émis par la source cible P k send(p source P j, k) = ρ (P source,p j ) E tous les messages sont reçus par une destination cible P k send(p j k, k) = ρ (P j,p k ) E conservation du nombre de messages cible P k, P i P k, P source send(p j P i, k) = send(p i P j, k) (P j,p i ) E (P i,p j ) E Diffusion en régime permanent Modèle bidirectionnel 18/ 55

52 Contraintes On peut écrire les mêmes contraintes que pour le routage de paquets : tous les messages sont émis par la source cible P k send(p source P j, k) = ρ (P source,p j ) E tous les messages sont reçus par une destination cible P k send(p j k, k) = ρ (P j,p k ) E conservation du nombre de messages cible P k, P i P k, P source send(p j P i, k) = send(p i P j, k) (P j,p i ) E (P i,p j ) E Diffusion en régime permanent Modèle bidirectionnel 18/ 55

53 Contraintes On peut écrire les mêmes contraintes que pour le routage de paquets : tous les messages sont émis par la source cible P k send(p source P j, k) = ρ (P source,p j ) E tous les messages sont reçus par une destination cible P k send(p j k, k) = ρ (P j,p k ) E conservation du nombre de messages cible P k, P i P k, P source send(p j P i, k) = send(p i P j, k) (P j,p i ) E (P i,p j ) E Diffusion en régime permanent Modèle bidirectionnel 18/ 55

54 Nombre de message sur une arête La distinction des messages par destination est fictive Quel est le nombre total de messages sur l arête (i, j)? s(p i P j ) = k send(p i P j, k)? Certains messages à destination de k et k sont en fait deux copies du même message : on ne veut pas les transmettre deux fois Hypothèse optimiste : s(p i P j ) = max {send(p i P j, k)} k il existe une destination k 0 (réalisant le max k ) telle que les messages envoyés vers toute autre destination k forment un sous-ensemble des messages envoyés à k 0 Pas de justification de cette hypothèse ici : on cherche d abord une majoration du débit, pas forcément réalisable Diffusion en régime permanent Modèle bidirectionnel 19/ 55

55 Nombre de message sur une arête La distinction des messages par destination est fictive Quel est le nombre total de messages sur l arête (i, j)? s(p i P j ) = k send(p i P j, k) non Certains messages à destination de k et k sont en fait deux copies du même message : on ne veut pas les transmettre deux fois Hypothèse optimiste : s(p i P j ) = max {send(p i P j, k)} k il existe une destination k 0 (réalisant le max k ) telle que les messages envoyés vers toute autre destination k forment un sous-ensemble des messages envoyés à k 0 Pas de justification de cette hypothèse ici : on cherche d abord une majoration du débit, pas forcément réalisable Diffusion en régime permanent Modèle bidirectionnel 19/ 55

56 Nombre de message sur une arête La distinction des messages par destination est fictive Quel est le nombre total de messages sur l arête (i, j)? s(p i P j ) = k send(p i P j, k) non Certains messages à destination de k et k sont en fait deux copies du même message : on ne veut pas les transmettre deux fois Hypothèse optimiste : s(p i P j ) = max {send(p i P j, k)} k il existe une destination k 0 (réalisant le max k ) telle que les messages envoyés vers toute autre destination k forment un sous-ensemble des messages envoyés à k 0 Pas de justification de cette hypothèse ici : on cherche d abord une majoration du débit, pas forcément réalisable Diffusion en régime permanent Modèle bidirectionnel 19/ 55

57 Nombre de message sur une arête La distinction des messages par destination est fictive Quel est le nombre total de messages sur l arête (i, j)? s(p i P j ) = k send(p i P j, k) non Certains messages à destination de k et k sont en fait deux copies du même message : on ne veut pas les transmettre deux fois Hypothèse optimiste : s(p i P j ) = max {send(p i P j, k)} k il existe une destination k 0 (réalisant le max k ) telle que les messages envoyés vers toute autre destination k forment un sous-ensemble des messages envoyés à k 0 Pas de justification de cette hypothèse ici : on cherche d abord une majoration du débit, pas forcément réalisable Diffusion en régime permanent Modèle bidirectionnel 19/ 55

58 Contrainte du modèle un-port Temps moyen d utilisation de l arête (P i, P j ) : T (i, j) = s(i j) c i,j Un processeur ne peut émettre deux message à la fois temps moyen d émission par unité de temps borné : P i T (i, j) 1 (P i,p j ) E Un processeur ne peut recevoir deux message à la fois temps moyen de réception par unité de temps borné : P i T (k, i) 1 (P k,p i ) E Diffusion en régime permanent Modèle bidirectionnel 20/ 55

59 Contrainte du modèle un-port Temps moyen d utilisation de l arête (P i, P j ) : T (i, j) = s(i j) c i,j Un processeur ne peut émettre deux message à la fois temps moyen d émission par unité de temps borné : P i T (i, j) 1 (P i,p j ) E Un processeur ne peut recevoir deux message à la fois temps moyen de réception par unité de temps borné : P i T (k, i) 1 (P k,p i ) E Diffusion en régime permanent Modèle bidirectionnel 20/ 55

60 Contrainte du modèle un-port Temps moyen d utilisation de l arête (P i, P j ) : T (i, j) = s(i j) c i,j Un processeur ne peut émettre deux message à la fois temps moyen d émission par unité de temps borné : P i T (i, j) 1 (P i,p j ) E Un processeur ne peut recevoir deux message à la fois temps moyen de réception par unité de temps borné : P i T (k, i) 1 (P k,p i ) E Diffusion en régime permanent Modèle bidirectionnel 20/ 55

61 Programme linéaire obtenu Maximiser ρ opt P k V cibles P k V cibles ( Pk V cibles, P i P i P k, P source (i, j) E, P i V, P i V, X send(p source P j, k) = ρ opt (P source,p j ) E X (P j,p k ) E send(p j P k, k) = ρ opt X send(p j P i, k) = X send(p i P j, k) (P j,p i ) E X (P i,p j ) E send(p i P j, k) c i,j T i,j P k V cibles X T i,j 1 (i,j) E X (j,i) E T j,i 1 P i, P j, P k V send(p i P j, k) 0 O(n 2 ) contraintes (non triviales) pour O(n 3 ) variables Diffusion en régime permanent Modèle bidirectionnel 21/ 55

62 Construction d un ensemble d arbres de débit optimal On cherche à atteindre la borne ρ opt calculé par le programme linéaire. G s = (V, E, s) : graphe dont les arêtes sont étiquetées par la valeur de s(p i P j ) dans une solution optimale du programme linéaire Propriété Dans G s, il existe un flot de valeur ρ opt de la source vers tout nœud. ρ opt est la valeur de la coupe minimale entre P source et tout autre sommet P i Diffusion en régime permanent Modèle bidirectionnel 22/ 55

63 Construction d un ensemble d arbres de débit optimal Version pondérée du théorème d Edmonds sur les arborescences Étant donné le graphe dirigé pondéré G s, on peut trouver un ensemble d arbres A 1,..., A k et un ensemble de poids x 1,... x k tels que k x it i G s et x i = ρ opt en temps fortement polynomial, et k V 3 + E. i Ce résultat permet d obtenir : un ensemble d arbres réalisant ρ opt, leur pondération le nombre d arbres est borné par V 3 + E Diffusion en régime permanent Modèle bidirectionnel 23/ 55

64 Exemple d extraction d arbres 1 Résultat du programme linéaire : P 0 P /2 1/2 P 1 1/ /2 P 2 = P 1 1 1/2 1/2 P 2 ρ opt = 1 1 P 3 P 4 P 3 P 4 2 Découpage en arbres (théorème d Edmonds) : = 1 2 P 1 P 0 P P 0 P 1 P 2 P 3 P 4 P 3 P 4 Diffusion en régime permanent Modèle bidirectionnel 24/ 55

65 Organisation des communications Équations du modèle un-port organisation des communications { un processeur pour les émissions P out processeur P i un processeur pour les réceptions P in P in source P out source G B : P1 in P1 out P2 int P2 out P3 in P3 out P in 4 P out 4 Ensemble de communications pouvant se faire simultanément : couplage dans le graphe biparti G B Diffusion en régime permanent Modèle bidirectionnel 25/ 55

66 Extraction de couplages Version pondérée du théorème de König Il est possible de décomposer G B en une somme pondérée de couplages, telles que la somme des pondérations est au plus égale au degré maximal d un nœud dans G B. nombre de couplages borné par E Le degré maximal d un nœud dans le graphe biparti dont les arêtes sont étiquetées par la valeur s(p i P j ) vaut 1 (d après les contraintes un-port). P1 in P3 in 1/2 1/2 P1 out 1/2 P3 out P in source P out source 1/2 1/2 P2 int P4 in P2 out 1/2 P4 out = 1 2 P1 in P3 in P1 out P3 out P in source P out source P2 int P4 in P2 out P4 out P1 in P3 in P1 out P3 out P in source P out source P2 int P4 in P2 out P4 out Diffusion en régime permanent Modèle bidirectionnel 26/ 55

67 Reconstruction d une période Quantités rationnelles de messages dans chaque couplage Durée de la période = PPCM des dénominateurs des quantités de messages dans chaque couplage Période découpée en intervalles représentant les couplages Affectation des transferts en respectant les dépendances (un processeur retransmet lors d une période les messages reçus à la période précédente) Liens t Ps P1 Ps P2 P1 P2 P2 P1 P1 P3 P2 P4 Diffusion en régime permanent Modèle bidirectionnel 27/ 55

68 Reconstruction d une période Quantités rationnelles de messages dans chaque couplage Durée de la période = PPCM des dénominateurs des quantités de messages dans chaque couplage Période découpée en intervalles représentant les couplages Affectation des transferts en respectant les dépendances (un processeur retransmet lors d une période les messages reçus à la période précédente) Liens t Ps P1 Ps P2 P1 P2 P2 P1 P1 P3 P2 P4 Diffusion en régime permanent Modèle bidirectionnel 27/ 55

69 Reconstruction d une période Quantités rationnelles de messages dans chaque couplage Durée de la période = PPCM des dénominateurs des quantités de messages dans chaque couplage Période découpée en intervalles représentant les couplages Affectation des transferts en respectant les dépendances (un processeur retransmet lors d une période les messages reçus à la période précédente) Liens t Ps P1 Ps P2 P1 P2 P2 P1 P1 P3 P2 P4 Diffusion en régime permanent Modèle bidirectionnel 27/ 55

70 Reconstruction d une période Quantités rationnelles de messages dans chaque couplage Durée de la période = PPCM des dénominateurs des quantités de messages dans chaque couplage Période découpée en intervalles représentant les couplages Affectation des transferts en respectant les dépendances (un processeur retransmet lors d une période les messages reçus à la période précédente) Liens t Ps P1 Ps P2 P1 P2 P2 P1 P1 P3 P2 P4 Diffusion en régime permanent Modèle bidirectionnel 27/ 55

71 Reconstruction d une période Période de l ordonnancement Quantités rationnelles de messages dans chaque couplage Durée Liensde la 2k période 2k = + 1 PPCM 2k des + 2 dénominateurs t des quantités de messages P s P 1 dans chaque couplage M 1 k Période découpée en intervalles représentant les couplages P s P 2 Mk 2 Affectation des transferts en respectant les dépendances (un processeur retransmet lors d une période les messages reçus à la période P 1 précédente) P 2 Mk 1 1 description d une période par intervalles P 2 P 1 M 2 k 1 P 1 P 3 M 1 k 1 M 2 k 2 P 2 P 4 M 1 k 2 M 2 k 1 Diffusion en régime permanent Modèle bidirectionnel 27/ 55

72 Résultats sous le modèle bidirectionnel Pour la diffusion de messages ordonnancement périodique de débit optimal asymptotiquement optimal pour le temps d exécution description compacte (période décrite par intervalles) Extension à d autres primitives de communications collectives : Étude similaire pour la réduction, la distribution Par contre le multicast (diffusion restreinte) est NP-complet, et non-apx Diffusion en régime permanent Modèle bidirectionnel 28/ 55

Chapitre 6. Modélisation en P.L.I. 6.1 Lien entre PL et PLI. 6.1.1 Approximation de la PLI

Chapitre 6. Modélisation en P.L.I. 6.1 Lien entre PL et PLI. 6.1.1 Approximation de la PLI Chapitre 6 Modélisation en P.L.I. 6.1 Lien entre PL et PLI (P) problème de PL. On restreint les variables à être entières : on a un problème de PLI (ILP en anglais). On restreint certaines variables à

Plus en détail

Parallel Tree-based Exact Algorithms using Heterogeneous Many and Multi-core Computing for Solving Challenging Problems in Combinatorial Optimization

Parallel Tree-based Exact Algorithms using Heterogeneous Many and Multi-core Computing for Solving Challenging Problems in Combinatorial Optimization Parallel Tree-based Exact Algorithms using Heterogeneous Many and Multi-core Computing for Solving Challenging Problems in Combinatorial Optimization Rudi Leroy Encadrement : N. Melab (Univ. Lille 1),

Plus en détail

Allocation de ressources pour réseaux virtuels Projet de fin d études. Mikaël Capelle. Marie-José Huguet Slim Abdellatif Pascal Berthou

Allocation de ressources pour réseaux virtuels Projet de fin d études. Mikaël Capelle. Marie-José Huguet Slim Abdellatif Pascal Berthou Allocation de ressources pour réseaux virtuels Projet de fin d études Mikaël Capelle Marie-José Huguet Slim Abdellatif Pascal Berthou 27 Juin 2014 Plan 1 Introduction - La virtualisation de réseau 2 3

Plus en détail

M2 MPRO. Optimisation dans les Graphes 2014-2015

M2 MPRO. Optimisation dans les Graphes 2014-2015 M2 MPRO Optimisation dans les Graphes 2014-2015 Programmation linéaire et problèmes d'optimisation dans les graphes 1 Problèmes d'optimisation dans les graphes : quelles méthodes pour les résoudre? Théorie

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

Recherche opérationnelle. Programmation linéaire et recherche opérationnelle. Programmation linéaire. Des problèmes de RO que vous savez résoudre

Recherche opérationnelle. Programmation linéaire et recherche opérationnelle. Programmation linéaire. Des problèmes de RO que vous savez résoudre Recherche opérationnelle Programmation linéaire et recherche opérationnelle Ioan Todinca Ioan.Todinca@univ-orleans.fr tél. 0 38 41 7 93 bureau : en bas à gauche Tentative de définition Ensemble de méthodes

Plus en détail

Problème combinatoire sur le réseau de transport de gaz. Nicolas Derhy, Aurélie Le Maitre, Nga Thanh CRIGEN Manuel Ruiz, Sylvain Mouret ARTELYS

Problème combinatoire sur le réseau de transport de gaz. Nicolas Derhy, Aurélie Le Maitre, Nga Thanh CRIGEN Manuel Ruiz, Sylvain Mouret ARTELYS Problème combinatoire sur le réseau de transport de gaz Nicolas Derhy, Aurélie Le Maitre, Nga Thanh CRIGEN Manuel Ruiz, Sylvain Mouret ARTELYS Au programme Présentation du problème Un problème d optimisation

Plus en détail

Programmation linéaire

Programmation linéaire 1 Programmation linéaire 1. Le problème, un exemple. 2. Le cas b = 0 3. Théorème de dualité 4. L algorithme du simplexe 5. Problèmes équivalents 6. Complexité de l Algorithme 2 Position du problème Soit

Plus en détail

Ordonnancement avec exclusion mutuelle par un graphe d intervalles ou d une classe apparentée : complexité et algorithmes ~ Frédéric Gardi

Ordonnancement avec exclusion mutuelle par un graphe d intervalles ou d une classe apparentée : complexité et algorithmes ~ Frédéric Gardi Ordonnancement avec exclusion mutuelle par un graphe d intervalles ou d une classe apparentée : complexité et algorithmes ~ Frédéric Gardi - 14 Juin 2005 - - Faculté des Sciences de Luminy - 1. Introduction

Plus en détail

Exercices théoriques

Exercices théoriques École normale supérieure 2008-2009 Département d informatique Algorithmique et Programmation TD n 9 : Programmation Linéaire Avec Solutions Exercices théoriques Rappel : Dual d un programme linéaire cf.

Plus en détail

Annexe 6. Notions d ordonnancement.

Annexe 6. Notions d ordonnancement. Annexe 6. Notions d ordonnancement. APP3 Optimisation Combinatoire: problèmes sur-contraints et ordonnancement. Mines-Nantes, option GIPAD, 2011-2012. Sophie.Demassey@mines-nantes.fr Résumé Ce document

Plus en détail

Résolution d un problème de Job-Shop intégrant des contraintes de Ressources Humaines

Résolution d un problème de Job-Shop intégrant des contraintes de Ressources Humaines Résolution d un problème de Job-Shop intégrant des contraintes de Ressources Humaines ROADEF 09, 10-12 février 2009, Nancy (France) O. Guyon 1.2, P. Lemaire 2, É. Pinson 1 et D. Rivreau 1 1 LISA - Institut

Plus en détail

Algorithmique distribuée d exclusion mutuelle : vers une gestion efficace des ressources

Algorithmique distribuée d exclusion mutuelle : vers une gestion efficace des ressources Algorithmique distribuée d exclusion mutuelle : vers une gestion efficace des ressources Jonathan Lejeune LIP6-UPMC/CNRS, Inria 19 septembre 2014 Directeur : Pierre Sens Encadrants : Luciana Arantes et

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

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

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

Contributions à l expérimentation sur les systèmes distribués de grande taille Contributions à l expérimentation sur les systèmes distribués de grande taille Lucas Nussbaum Soutenance de thèse 4 décembre 2008 Lucas Nussbaum Expérimentation sur les systèmes distribués 1 / 49 Contexte

Plus en détail

Administration réseau Routage et passerelle

Administration réseau Routage et passerelle Administration réseau Routage et passerelle A. Guermouche A. Guermouche Cours 2 : Routage et passerelle 1 Plan 1. Introduction 2. Routage dans IP Principes de base Manipulation des tables de routage 3.

Plus en détail

Heuristique et métaheuristique. 8. Optimisation combinatoire et métaheuristiques. Optimisation combinatoire. Problème du voyageur de commerce

Heuristique et métaheuristique. 8. Optimisation combinatoire et métaheuristiques. Optimisation combinatoire. Problème du voyageur de commerce Heuristique et métaheuristique IFT1575 Modèles de recherche opérationnelle (RO) 8. Optimisation combinatoire et métaheuristiques Un algorithme heuristique permet d identifier au moins une solution réalisable

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

CORBA haute performance

CORBA haute performance CORBA haute performance «CORBA à 730Mb/s!» Alexandre DENIS PARIS/IRISA, Rennes Alexandre.Denis@irisa.fr Plan Motivations : concept de grille de calcul CORBA : concepts fondamentaux Vers un ORB haute performance

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

Besoin de concevoir des systèmes massivement répartis. Comment tester le système? Solution. Évaluation de systèmes répartis à large échelle

Besoin de concevoir des systèmes massivement répartis. Comment tester le système? Solution. Évaluation de systèmes répartis à large échelle Besoin de concevoir des systèmes massivement répartis. Évaluation de systèmes répartis à large échelle Sergey Legtchenko Motivation : LIP6-INRIA Tolérance aux pannes Stockage de données critiques Coût

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

Routage, Allocations de Ressources et Équilibres.

Routage, Allocations de Ressources et Équilibres. Routage, Allocations de Ressources et Équilibres. Johanne Cohen Johanne.Cohen@loria.fr CNRS, Laboratoire LORIA, Nancy. Routage, Allocations de Ressources et Équilibres. p.1/23 Jeu Ciseaux/Papier/Caillou.

Plus en détail

Optimisation multi-critère pour l allocation de ressources sur Clouds distribués avec prise en compte de l énergie

Optimisation multi-critère pour l allocation de ressources sur Clouds distribués avec prise en compte de l énergie Optimisation multi-critère pour l allocation de ressources sur Clouds distribués avec prise en compte de l énergie 1 Présenté par: Yacine KESSACI Encadrement : N. MELAB E-G. TALBI 31/05/2011 Plan 2 Motivation

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

Aspects théoriques et algorithmiques du calcul réparti Placement - Compléments

Aspects théoriques et algorithmiques du calcul réparti Placement - Compléments A- 0/0 Aspects théoriques et algorithmiques du calcul réparti Placement - Compléments Patrick CIARLET Enseignant-Chercheur UMA patrick.ciarlet@ensta-paristech.fr Françoise LAMOUR franc.lamour@gmail.com

Plus en détail

Cours de Master Recherche

Cours de Master Recherche Cours de Master Recherche Spécialité CODE : Résolution de problèmes combinatoires Christine Solnon LIRIS, UMR 5205 CNRS / Université Lyon 1 2007 Rappel du plan du cours 16 heures de cours 1 - Introduction

Plus en détail

Quelques perspectives pour la programmation mathématique en commande robuste

Quelques perspectives pour la programmation mathématique en commande robuste Quelques perspectives pour la programmation mathématique en commande robuste P. Apkarian, D. Arzelier, D. Henrion, D. Peaucelle UPS - CERT - LAAS-CNRS Contexte de la commande robuste 2 Théorie de la complexité

Plus en détail

Introduction. Le contrôle de flux. Environnement

Introduction. Le contrôle de flux. Environnement Introduction Protocoles apparaissant dans la couche liaison de données ou dans la couche transport Différences suivant les cas dues au Texte Le contrôle de flux et la récupération des erreurs Temps de

Plus en détail

Chapitre IV : La gestion du processeur Mécanismes d ordonnancement

Chapitre IV : La gestion du processeur Mécanismes d ordonnancement Chapitre IV : La gestion du processeur Mécanismes d ordonnancement Eric.Leclercq@u-bourgogne.fr Département IEM http://ufrsciencestech.u-bourgogne.fr http://ludique.u-bourgogne.fr/~leclercq 1 er mars 2007

Plus en détail

Clermont Ferrand - Janvier 2003

Clermont Ferrand - Janvier 2003 DISDAMIN: Algorithmes de Data Mining Distribués Valerie FIOLET (1,2) - Bernard TOURSEL (1) 1 Equipe PALOMA - LIFL - USTL - LILLE (FRANCE) 2 Service Informatique - UMH - MONS (BELGIUM) Clermont Ferrand

Plus en détail

Optimisation for Cloud Computing and Big Data

Optimisation for Cloud Computing and Big Data 1 / 23 Optimisation for Cloud Computing and Big Data Olivier Beaumont, Lionel Eyraud-Dubois 2 / 23 Aujourd hui Problèmes de fiabilité on va oublier la dynamicité Placement de VMs en programmation par contraintes

Plus en détail

Multi-processeurs, multi-cœurs et cohérence mémoire et cache

Multi-processeurs, multi-cœurs et cohérence mémoire et cache Multi-processeurs, multi-cœurs et cohérence mémoire et cache Intervenant : Thomas Robert Institut Mines-Télécom Rappel système d exploitation & Parallélisme L unité d exécution pour un système d exploitation

Plus en détail

Raisonnement symbolique et géométrique pour la robotique mobile

Raisonnement symbolique et géométrique pour la robotique mobile Introduction à la réunion finale Raisonnement symbolique et géométrique pour la robotique mobile J. Guitton, J.L. Farges Control Architectures of Robots - Bourges - 30 mai 2008 1 Plan Introduction Vers

Plus en détail

Planifica(on du stockage intermédiaire dans l industrie du shampoing

Planifica(on du stockage intermédiaire dans l industrie du shampoing dans l industrie du shampoing R. Belaid, V. T kindt, C. Esswein, rabah.belaid@etu.univ-tours.fr Université François Rabelais Tours Laboratoire d Informatique 64 avenue Jean Portalis, 37200, Tours Journées

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

La programmation linéaire : une introduction. Qu est-ce qu un programme linéaire? Terminologie. Écriture mathématique

La programmation linéaire : une introduction. Qu est-ce qu un programme linéaire? Terminologie. Écriture mathématique La programmation linéaire : une introduction Qu est-ce qu un programme linéaire? Qu est-ce qu un programme linéaire? Exemples : allocation de ressources problème de recouvrement Hypothèses de la programmation

Plus en détail

L'architecture Mesh. frati@nyx.unice.fr

L'architecture Mesh. frati@nyx.unice.fr L'architecture Mesh frati@nyx.unice.fr On connaissait déjà le mode sans infrastructure : le mode Ad-Hoc mode habituel pour connecter deux ordinateurs entre eux (d égal à égal) permettant des partages de

Plus en détail

LOSLIER Mathieu IR1 31 Mai 2011. Rapport TP Firewall

LOSLIER Mathieu IR1 31 Mai 2011. Rapport TP Firewall Rapport TP Firewall 1 Table des matières Rapport TP Firewall... 1 Introduction... 3 1. Plate-forme de sécurité étudiée... 3 2. Routage classique... 3 2.1 Mise en œuvre du routage classique... 4 2.2 Configuration

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

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

Optimisation en nombres entiers

Optimisation en nombres entiers Optimisation en nombres entiers p. 1/83 Optimisation en nombres entiers Michel Bierlaire michel.bierlaire@epfl.ch EPFL - Laboratoire Transport et Mobilité - ENAC Optimisation en nombres entiers p. 2/83

Plus en détail

Déploiement et contrôle d applications parallèles sur grappes de grandes tailles

Déploiement et contrôle d applications parallèles sur grappes de grandes tailles Déploiement et contrôle d applications parallèles sur grappes de grandes tailles Cyrille Martin Directrice : Brigitte Plateau Co-encadrant : Jacques Briat Laboratoire ID-IMAG http://www-id.imag.fr Projet

Plus en détail

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

Cours 1: Introduction à l algorithmique

Cours 1: Introduction à l algorithmique 1 Cours 1: Introduction à l algorithmique Olivier Bournez bournez@lix.polytechnique.fr LIX, Ecole Polytechnique 2011-12 Algorithmique 2 Aujourd hui Calcul de x n Maximum Complexité d un problème Problème

Plus en détail

Aspects théoriques et algorithmiques du calcul réparti Le placement

Aspects théoriques et algorithmiques du calcul réparti Le placement Aspects théoriques et algorithmiques du calcul réparti Le placement Patrick CIARLET Enseignant-Chercheur UMA patrick.ciarlet@ensta-paristech.fr Françoise LAMOUR franc.lamour@gmail.com Aspects théoriques

Plus en détail

Table des matières I La programmation linéaire en variables continues 1 Présentation 3 1 Les bases de la programmation linéaire 5 1.1 Formulation d'un problème de programmation linéaire........... 5 1.2

Plus en détail

Allocation de tâches et théorie des jeux. p. Allocation des tâches. 1) Allocation de tâches.

Allocation de tâches et théorie des jeux. p. Allocation des tâches. 1) Allocation de tâches. Allocation de tâches et théorie des jeux. Johanne ohen Johanne.ohen@loria.fr 1) Allocation de tâches. 1. Définition sous forme d un jeu. 2. Existence d un équilibre de Nash Allocation des tâches. m machines

Plus en détail

Aspects théoriques et algorithmiques du calcul réparti Le placement

Aspects théoriques et algorithmiques du calcul réparti Le placement Aspects théoriques et algorithmiques du calcul réparti Le placement Patrick CIARLET Enseignant-Chercheur UMA patrick.ciarlet@ensta-paristech.fr Françoise LAMOUR franc.lamour@gmail.com Aspects théoriques

Plus en détail

Algorithmique et Analyse d Algorithmes

Algorithmique et Analyse d Algorithmes Algorithmique et Analyse d Algorithmes L3 Info Cours 11 : Arbre couvrant Prétraitement Benjamin Wack 2015-2016 1 / 32 La dernière fois Rappels sur les graphes Problèmes classiques Algorithmes d optimisation

Plus en détail

Livraison de colis pour des clients du e-commerce : modèles de Wardrop, et Logit simple ou imbriqué

Livraison de colis pour des clients du e-commerce : modèles de Wardrop, et Logit simple ou imbriqué Séminaire du LGI Centrale Paris Livraison de colis pour des clients du e-commerce : modèles de Wardrop, et Logit simple ou imbriqué Y. Hayel 1, D. Quadri 2, T. Jimenez 1, L. Brotcorne 3, B. Tousni 3 LGI,

Plus en détail

Les Algorithmes par Vagues. Algorithmique Distribuée

Les Algorithmes par Vagues. Algorithmique Distribuée Les Algorithmes par Vagues 1 Les Algorithmes par Vagues Introduction Définitions Particularités Vague pour topologie en anneau Vague pour topologie en arbre Vague pour topologie quelconque 2 Introduction

Plus en détail

Contexte et motivations Les techniques envisagées Evolution des processus Conclusion

Contexte et motivations Les techniques envisagées Evolution des processus Conclusion Vérification de logiciels par analyse statique Contexte et motivations Les techniques envisagées Evolution des processus Conclusion Contexte et motivations Specification Design architecture Revues and

Plus en détail

C09: Conception parallèle

C09: Conception parallèle méthodologie de conception en quatre étapes virtualisation applications structurées et non structurées aspect analytique: S, E Accélération Amdahl Accélération Gustafson Surcharge de parallélisation Conception

Plus en détail

Nouvelles propositions pour la résolution exacte du sac à dos multi-objectif unidimensionnel en variables binaires

Nouvelles propositions pour la résolution exacte du sac à dos multi-objectif unidimensionnel en variables binaires Nouvelles propositions pour la résolution exacte du sac à dos multi-objectif unidimensionnel en variables binaires Julien Jorge julien.jorge@univ-nantes.fr Laboratoire d Informatique de Nantes Atlantique,

Plus en détail

LOSS NETWORK MODELS AND MULTIPLE METRIC PERFORMANCE SENSITIVITY ANALYSIS FOR MOBILE WIRELESS MULTI-HOP NETWORKS HOANG TUAN NHA DINH HONG THANH

LOSS NETWORK MODELS AND MULTIPLE METRIC PERFORMANCE SENSITIVITY ANALYSIS FOR MOBILE WIRELESS MULTI-HOP NETWORKS HOANG TUAN NHA DINH HONG THANH LOSS NETWORK MODELS AND MULTIPLE METRIC PERFORMANCE SENSITIVITY ANALYSIS FOR MOBILE WIRELESS MULTI-HOP NETWORKS GROUPE 4: LANG KHAC CHIEN HOANG TUAN NHA DINH HONG THANH Plan de presentation Introduction

Plus en détail

et techniques d ordonnancement : approches statiques et dynamiques

et techniques d ordonnancement : approches statiques et dynamiques ÉCOLE NORMALE SUPÉRIEURE DE LYON Laboratoire de l Informatique du Parallélisme THÈSE pour obtenir le grade de Docteur de l École Normale Supérieure de Lyon spécialité : Informatique au titre de l école

Plus en détail

Préparation à l agrégation 2012/2013. Mots clés : Graphes. Vecteur propre ; matrices stochastiques ; matrices à coefficients positifs.

Préparation à l agrégation 2012/2013. Mots clés : Graphes. Vecteur propre ; matrices stochastiques ; matrices à coefficients positifs. Mots clés : Graphes. Vecteur propre ; matrices stochastiques ; matrices à coefficients positifs. Le jury n exige pas une compréhension exhaustive du texte. Vous êtes laissé(e) libre d organiser votre discussion

Plus en détail

NFA083 Réseau et Administration Web TCP/IP

NFA083 Réseau et Administration Web TCP/IP NFA083 Réseau et Administration Web TCP/IP Sami Taktak sami.taktak@cnam.fr Centre d Étude et De Recherche en Informatique et Communications Conservatoire National des Arts et Métiers Rôle de la Couche

Plus en détail

Objectifs du cours d aujourd hui. Informatique II : Cours d introduction à l informatique et à la programmation objet. Complexité d un problème (2)

Objectifs du cours d aujourd hui. Informatique II : Cours d introduction à l informatique et à la programmation objet. Complexité d un problème (2) Objectifs du cours d aujourd hui Informatique II : Cours d introduction à l informatique et à la programmation objet Complexité des problèmes Introduire la notion de complexité d un problème Présenter

Plus en détail

Recherche Opérationnelle

Recherche Opérationnelle Chapitre 2 : Programmation linéaire (Introduction) Vendredi 06 Novembre 2015 Sommaire 1 Historique 2 3 4 5 Plan 1 Historique 2 3 4 5 La programmation linéaire est un cadre mathématique général permettant

Plus en détail

Contrainte de flot pour RCPSP avec temps de transfert

Contrainte de flot pour RCPSP avec temps de transfert Contrainte de flot et x-rcpsc T 1 Contrainte de flot pour RCPSP avec temps de transfert PS temp, s ij Cmax BENOIST Thierry BOUYGUES/e-Lab DIAMANTINI Maurice ENSTA/LMA Contrainte de flot et x-rcpsc T Présentation

Plus en détail

Construction distribuée de groupes pour le calcul à grande échelle. O. Beaumont, N. Bonichon, P. Duchon, L. Eyraud-Dubois, H.

Construction distribuée de groupes pour le calcul à grande échelle. O. Beaumont, N. Bonichon, P. Duchon, L. Eyraud-Dubois, H. Construction distribuée de groupes pour le calcul à grande échelle O. Beaumont, N. Bonichon, P. Duchon, L. Eyraud-Dubois, H. Larchevêque O. Beaumont, N. Bonichon, P. Duchon, L. Construction Eyraud-Dubois,

Plus en détail

Introduction à la Recherche en Laboratoire

Introduction à la Recherche en Laboratoire Introduction à la Recherche en Laboratoire Transferts de données pour le vol de travail Tristan Darricau tristan.darricau@ensimag.grenoble-inp.fr 26 mai 2014 Grenoble INP - ENSIMAG Ecadrement Frédéric

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

TD 2 Chapitre 4 : Support des Services et Serveurs. Objectifs : Maîtriser l'exploitation des tables de routage dynamique.

TD 2 Chapitre 4 : Support des Services et Serveurs. Objectifs : Maîtriser l'exploitation des tables de routage dynamique. SI 5 BTS Services Informatiques aux Organisations 1 ère année TD 2 Chapitre 4 : Support des Services et Serveurs Le routage dynamique Objectifs : Maîtriser l'exploitation des tables de routage dynamique.

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

Cours d introduction aux réseaux informatiques Année académique 2010-2011 Interrogation finale de première session Juin 2011

Cours d introduction aux réseaux informatiques Année académique 2010-2011 Interrogation finale de première session Juin 2011 Cours d introduction aux réseaux informatiques Année académique 00-0 Interrogation finale de première session Juin 0 Remettez une feuille par question même si vous ne répondez pas à la question. Indiquez

Plus en détail

RAPPORT DE CONCEPTION UML :

RAPPORT DE CONCEPTION UML : Carlo Abi Chahine Sylvain Archenault Yves Houpert Martine Wang RAPPORT DE CONCEPTION UML : Bamboo Ch@t Projet GM4 Juin 2006 Table des matières 1 Introduction 2 2 Présentation du logiciel 3 2.1 Précisions

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

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

THÈSE L UNIVERSITÉ BORDEAUX I

THÈSE L UNIVERSITÉ BORDEAUX I THÈSE présentée à L UNIVERSITÉ BORDEAUX I ÉCOLE DOCTORALE DE MATHÉMATIQUES ET D INFORMATIQUE Par Hejer REJEB POUR OBTENIR LE GRADE DE DOCTEUR SPÉCIALITÉ : Informatique Étude des problèmes d ordonnancement

Plus en détail

Notion de complexité

Notion de complexité 1 de 27 Algorithmique Notion de complexité Florent Hivert Mél : Florent.Hivert@lri.fr Adresse universelle : http://www-igm.univ-mlv.fr/ hivert Outils mathématiques 2 de 27 Outils mathématiques : analyse

Plus en détail

codage correcteur d erreurs convolutionnel 1. Définition...2 2. représentation en treillis...3 3. Décodage : algorithme de Viterbi...3 4.

codage correcteur d erreurs convolutionnel 1. Définition...2 2. représentation en treillis...3 3. Décodage : algorithme de Viterbi...3 4. codage correcteur d erreurs convolutionnel. éfinition.... représentation en treillis...3 3. écodage : algorithme de Viterbi...3 4. istance libre...5 5. iagramme d état. Fonction de transfert...5 6. écodage

Plus en détail

Définitions. Numéro à préciser. (Durée : )

Définitions. Numéro à préciser. (Durée : ) Numéro à préciser (Durée : ) On étudie dans ce problème l ordre lexicographique pour les mots sur un alphabet fini et plusieurs constructions des cycles de De Bruijn. Les trois parties sont largement indépendantes.

Plus en détail

TD2 : CORRECTION. Exercice 1 : 1. Quel est l avantage de la séparation de l adressage en deux parties dans l adressage Internet?

TD2 : CORRECTION. Exercice 1 : 1. Quel est l avantage de la séparation de l adressage en deux parties dans l adressage Internet? TD2 : CORRECTION I. connaître son environnement réseau a. Quelle est l adresse IPv4 de votre PC? l adresse IPv6? ipconfig : Adresse IPv4..............: 192.168.1.13 Masque de sous-réseau.... : 255.255.255.0

Plus en détail

Multiplication par une constante entière

Multiplication par une constante entière Multiplication par une constante entière Vincent Lefèvre Juin 2001 Introduction But : générer du code optimal à l aide d opérations élémentaires (décalages vers la gauche, additions, soustractions). Utile

Plus en détail

Le problème du flot maximal avec contraintes sur le nombre de chemins

Le problème du flot maximal avec contraintes sur le nombre de chemins Le problème du flot maximal avec contraintes sur le nombre de chemins Jérôme Truffot, Christophe Duhamel, Philippe Mahey jerome.truffot@isima.fr, christophe.duhamel@isima.fr, philippe.mahey@isima.fr LIMOS,

Plus en détail

Big Data et Graphes : Quelques pistes de recherche

Big Data et Graphes : Quelques pistes de recherche Big Data et Graphes : Quelques pistes de recherche Hamamache Kheddouci Laboratoire d'informatique en Image et Systèmes d'information LIRIS UMR 5205 CNRS/INSA de Lyon/Université Claude Bernard Lyon 1/Université

Plus en détail

Supervision des réseaux et services pair à pair

Supervision des réseaux et services pair à pair Supervision des réseaux et services pair à pair Présentation des travaux de Thèse Guillaume Doyen LORIA - Université Henri Poincaré pour l obtention du Doctorat en Informatique de l université Henri Poincaré

Plus en détail

Ordonnancement Temps Réel. Emmanuel GROLLEAU & Pascal RICHARD LISI/ENSMA {grolleau,richardp}@ensma.fr

Ordonnancement Temps Réel. Emmanuel GROLLEAU & Pascal RICHARD LISI/ENSMA {grolleau,richardp}@ensma.fr Ordonnancement Temps Réel Emmanuel GROLLEAU & Pascal RICHARD LISI/ENSMA {grolleau,richardp}@ensma.fr 2 Plan de la présentation 1. Introduction aux systèmes temps réel 1.1 Différents modèles de tâches 1.2

Plus en détail

Problèmes et Algorithmes Fondamentaux III Algorithme distribué probabiliste

Problèmes et Algorithmes Fondamentaux III Algorithme distribué probabiliste Problèmes et Algorithmes Fondamentaux III Algorithme distribué probabiliste Arnaud Labourel Université de Provence 12 avril 2012 Arnaud Labourel (Université de Provence) Problèmes et Algorithmes Fondamentaux

Plus en détail

12/11/2015. Chapitre 4: Introduction à l ordonnancement. IV.1. Notions d ordonnancement (1) IV.1. Notions d ordonnancement (2)

12/11/2015. Chapitre 4: Introduction à l ordonnancement. IV.1. Notions d ordonnancement (1) IV.1. Notions d ordonnancement (2) Chapitre 4: Introduction à l ordonnancement 4.1. Notions d ordonnancement 4.2. Définitions 4.3. Modélisation 4.4. Méthodes de résolution 4.5. Problèmes types IV.1. Notions d ordonnancement (1) Ordonnancer

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

Applications #2 Problème du voyageur de commerce (TSP)

Applications #2 Problème du voyageur de commerce (TSP) Applications #2 Problème du voyageur de commerce (TSP) MTH6311 S. Le Digabel, École Polytechnique de Montréal H2014 (v2) MTH6311: Heuristiques pour le TSP 1/34 Plan 1. Introduction 2. Formulations MIP

Plus en détail

Big Data et Graphes : Quelques pistes de recherche

Big Data et Graphes : Quelques pistes de recherche Big Data et Graphes : Quelques pistes de recherche Hamamache Kheddouci http://liris.cnrs.fr/hamamache.kheddouci Laboratoire d'informatique en Image et Systèmes d'information LIRIS UMR 5205 CNRS/INSA de

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

La gestion de la liquidité dans TARGET2

La gestion de la liquidité dans TARGET2 La gestion de la liquidité dans TARGET2 INTRODUCTION Dans un RTGS (Real-Time Gross Settlement system), les transactions sont réglées en monnaie centrale, de façon continue, sur une base brute. Ce type

Plus en détail

Configuration et Déploiement d Applications Réparties par Intégration de l Hétérogénéité des Implémentations dans un Langage de Description d

Configuration et Déploiement d Applications Réparties par Intégration de l Hétérogénéité des Implémentations dans un Langage de Description d Configuration et Déploiement d Applications Réparties par Intégration de l Hétérogénéité des Implémentations dans un Langage de Description d Architecture Doctorant: Directeurs de thèse: Bechir ZALILA

Plus en détail

Recommandation dans les réseaux sociaux professionnels

Recommandation dans les réseaux sociaux professionnels Recommandation dans les réseaux sociaux professionnels Application sur un réseau bibliographique 6 mai 2010 Objectif et Motivation Techniques utilisées Algorithme exhaustive de recherche de toutes les

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

Arbres binaires. Hélène Milhem. Institut de Mathématiques de Toulouse, INSA Toulouse, France IUP SID, 2011-2012

Arbres binaires. Hélène Milhem. Institut de Mathématiques de Toulouse, INSA Toulouse, France IUP SID, 2011-2012 Arbres binaires Hélène Milhem Institut de Mathématiques de Toulouse, INSA Toulouse, France IUP SID, 2011-2012 H. Milhem (IMT, INSA Toulouse) Arbres binaires IUP SID 2011-2012 1 / 35 PLAN Introduction Construction

Plus en détail

Couplages et colorations d arêtes

Couplages et colorations d arêtes Couplages et colorations d arêtes Complément au chapitre 5 «Une employée mécontente» et au chapitre 9 «L apprentie sudokiste» Considérons n équipes de hockey qui doivent s affronter lors d un tournoi.

Plus en détail

DATA MINING 2 Réseaux de Neurones, Mélanges de classifieurs, SVM avancé

DATA MINING 2 Réseaux de Neurones, Mélanges de classifieurs, SVM avancé I. Réseau Artificiel de Neurones 1. Neurone 2. Type de réseaux Feedforward Couches successives Récurrents Boucles de rétroaction Exemples de choix pour la fonction : suivant une loi de probabilité Carte

Plus en détail

Systèmes pair-à-pair et diffusion épidémique d information. Laurent Massoulié. Thomson Laboratoire de recherche parisien

Systèmes pair-à-pair et diffusion épidémique d information. Laurent Massoulié. Thomson Laboratoire de recherche parisien Systèmes pair-à-pair et diffusion épidémique d information Laurent Massoulié Thomson Laboratoire de recherche parisien Plan Le pair-à-pair aujourd hui Exemple de diffusion épidémique: un virus informatique

Plus en détail

Le problème des multiplications matricielles enchaînées peut être énoncé comme suit : étant

Le problème des multiplications matricielles enchaînées peut être énoncé comme suit : étant Licence informatique - L Année 0/0 Conception d algorithmes et applications (LI) COURS Résumé. Dans cette cinquième séance, nous continuons l exploration des algorithmes de type Programmation Dynamique.

Plus en détail

Exercices du Cours de la programmation linéaire donné par le Dr. Ali DERBALA

Exercices du Cours de la programmation linéaire donné par le Dr. Ali DERBALA 75. Un plombier connaît la disposition de trois tuyaux sous des dalles ( voir figure ci dessous ) et il lui suffit de découvrir une partie de chacun d eux pour pouvoir y poser les robinets. Il cherche

Plus en détail

Exécution des applications réparties

Exécution des applications réparties Exécution des applications réparties Programmation des Applications Réparties Olivier Flauzac URCA Master STIC-Informatique première année Olivier Flauzac (URCA) PAR : Exécution des applications réparties

Plus en détail