Problèmes à machines parallèles avec serveur

Slides:



Advertisements
Présentations similaires
RAS 3,1 Modéliser des situations à l’aide de relations et les utiliser afin de résoudre des problèmes avec et sans l’aide de technologie.
Advertisements

La recherche de chemin optimal
DECOUVERTE ET MISE EN OEUVRE
Chapitre annexe. Récursivité
Fabrice Lauri, François Charpillet, Daniel Szer
?...1…-13…( )…+…-… …-(-2)…-(5-7)…-2+6…? Boîte à outils :
Licence pro MPCQ : Cours
Qui a le nombre qui vient après 8 ?
Fonctions & procédures
LIRMM 1 Journée Deuxièmes années Département Microélectronique LIRMM.
Classe : …………… Nom : …………………………………… Date : ………………..
Calculs de complexité d'algorithmes
GUIDLINE DE PRESENTATION DE LA FORMATION Architectures de Messageries (1) version du 7 Mars 2011 Temps : 4h A imprimer afin de pouvoir le suivre et noter.
Module d’Enseignement à Distance pour l’Architecture Logicielle
Application de réseaux bayésiens à la détection de fumées polluantes
Algèbre relationnelle
Algorithmes dapproximation pour loptimisation en ligne dordonnancements et de structures de communications Nicolas Thibault Thèse préparée au laboratoire.
F. Pascual - Laboratoire d’Informatique de Grenoble
Performances 1 Évolution : Performance. Performances 2 Évolution : Mémoire.
Plan Ordonnancement Obtention des tests de faisabilité entre processus
1 Intégration numérique garantie de systèmes décrits par des équations différentielles non-linéaires Application à l'estimation garantie d'état et de paramètres.
1 Efficient Data and Program Integration Using Binding Patterns Ioana Manolescu, Luc Bouganim, Francoise Fabret, Eric Simon INRIA.
Chap. 1 INTRODUCTION Beaucoup de problèmes de la vie courante, tels la gestion de réseaux de communication ou l'ordonnancement de tâches, correspondent.
Description du fonctionnement d'un système 1 Clic Clic
Ordonnancement des mouvements de deux robots
1 Page de garde présentation Propriétés des cycles dominants pour des cellules robotisées sans attente Fabien Mangione (GILCO) Nadia Brauner (Leibniz-IMAG)
Plan 1. Problème étudié : Job Shop 1.1. Données et contraintes
Plus rapide chemin bicritère : un problème d’aménagement du territoire
Influence de la distribution des temps opératoires sur le résultat de l’ordonnancement Chérif Sadfi Laboratoire Gestion Industrielle, Logistique et Conception.
Logiciel de Mobile Device Management
Problèmes d’ordonnancement
1 Cours numéro 3 Graphes et informatique Définitions Exemple de modélisation Utilisation de ce document strictement réservée aux étudiants de l IFSIC.
Application des algorithmes génétiques
le profil UML en temps réel MARTE
Auto-organisation dans les réseaux ad hoc
Vuibert Systèmes dinformation et management des organisations 6 e édition R. Reix – B. Fallery – M. Kalika – F. Rowe Chapitre 3 : Laide à la décision Laide.
Synchronisation et communication entre processus
Algorithmes Branch & Bound
GPA750 – Ordonnancement des systèmes de production aéronautique
Détection de co-évolution de gènes Master 2 : Informatique à Finalité Professionnelle et Recherche Unifiée (IFPRU) Parcours Ingénierie de lIntelligence.
Méthode des k plus proches voisins
Ordonnancement avec exclusion mutuelle par un graphe d’intervalles ou d’une classe apparentée : complexité et algorithmes ~ Frédéric Gardi - 14 Juin.
Présentation des documents administratifs
Test bilan de calcul mental N°1 :
« Recherche de méthode d’estimation de volume de production à risque »
GPA750 Les ateliers multigammes Chapitre 5
Programmation linéaire en nombres entiers Algorithme de la subdivision successive («Branch and Bound Algorithm»)
Courbes de Bézier.
1 Licence dinformatique Algorithmique des graphes Problèmes dordonnancement. Utilisation de ce document strictement réservée aux étudiants de l IFSIC dans.
Universté de la Manouba
Algorithmes d ’approximation
Performance des algorithmes à véracité garantie pour l'ordonnancement de tâches individualistes F. Pascual - LIG En collaboration avec : G. Christodoulou,
Page de garde présentation
Quelle heure est-il ??. THE TIME: OCLOCK IL EST HEURE IL EST + + HEURES etc.
Fanny Pascual - Laboratoire d’Informatique de Grenoble (LIG)
Propriétés des ordonnancements SPT
Ordonnancement de tâches
Introduction aux problèmes d'ordonnancement sans temps-morts.
Ordonnancement de tâches on-line avec pénalités Nicolas Thibault et Christian Laforest Laboratoire IBISC (Évry) 1 / 12.
Projet de Master première année 2007 / 2008
GPA750 – Gestion de Projets
Synchronisation Classique
Programmation linéaire en nombres entiers : les méthodes de troncature
1 Modèle pédagogique d’un système d’apprentissage (SA)
Projet de stage d’année IIR4 sous le thème:
Quel est l’intérêt d’utiliser le diagramme de Gantt dans la démarche de projet A partir d’un exemple concret, nous allons pouvoir exploiter plusieurs parties.
Cours des Systèmes d’exploitations
Réalisé par : Mr IRZIM Hédi Mr JRAD Firas
Optimisation pour la Conception de Systèmes Embarqués
Ordonnancement en présence d’agents individualistes
Transcription de la présentation:

Problèmes à machines parallèles avec serveur Samuel Guirchoun

Plan Présentation Etude de cas Algorithme Conclusion et perspectives Définitions et Objectifs Etude de cas Algorithme Présentation et optimalité Conclusion et perspectives

Introduction Application répartie Salle Réseau Serveur Bus M machines identiques Modules terminés Modules Salle Réseau

Introduction Nous nous intéressons : En particulier : aux problèmes d’ordonnancement de processus distants dans les systèmes informatiques En particulier : Un réseau LAN constitué de plusieurs machines clientes et un serveur Lien atelier-informatique : Existe-t-il des modèles d’ordonnancement de problèmes d’atelier utilisables pour les problèmes client-serveur?

Le problème Hypothèses Critère Machines distantes identiques Temps de communication/transport négligeables Pas d’interruption des processus (pas de préemption possible) Chaque processus est chargé par le serveur/robot sur une machine qui l’exécute (deux opérations par tâche) Chargement du processus immédiatement suivi de son exécution (contrainte no-wait) Critère Minimiser l’occupation des machines distantes : Ci

Le problème Atelier Réseau LAN Deux classes de problèmes abordées : On considère un ensemble de module à exécuter sur les machines du réseau le plus judicieusement possible pour ne pas encombrer le réseau. Au cours de mon stage de DEA, j’ai réalisé analyse de l’exécution de tâches et mesurer les temps d’exécutions des activités et les temps de communication sur monoprocesseur et répartis. Utilisation de PVM sur un réseau Linux. (gros grain) Cette analyse nous a conduit à considérer deux classes de problème s’en rapprochant Serveur Deux classes de problèmes abordées : Les problèmes à machines parallèles avec serveur notés P,S (Hall et al., PMS 1996) Les flow shop hybrides : notés FH2 (Vignier et al., 1999)

Etat de l’art : PS C. P. Koulamas (1996) P2,S1||Cmax  Beam Search S. A. Kravchenko et F. Werner (1997), N. G. Hall et al. (1996), P. Brucker et al. (2002) Résultats de complexité : si=s, pi=p et/ou ri Glass et al. (2000) travaux dédiés Kravchenko et Werner (2001) Heuristique : si=1 et Ci Abdekhodaee et Wirth (2002) Heuristiques : si+pi=s+p et Ci

Définition des problèmes P,S Problèmes à machines parallèles avec serveur : M machines parallèles identiques et un serveur noté S n travaux avec des temps d’exécution pi Chargement, durée si, est réalisé par le serveur si est immédiatement suivi de pi pour tout i (no-wait) M et S ne peuvent réaliser qu’une opération à la fois Chargement si possible si S et une des machines M sont disponibles (multiressource) Environnements de production Informatique : pas de Multiressource s1 p4 s5 s4 s2 s3 p1 p5 p2 p3 S M1 M2

Etat de l’art : FH Gupta (1988) Hoogeveen et al. (1996) fortement NP-difficiles Hoogeveen et al. (1996) même pour les version préemptives Vignier et al. (1999) , Linn et Zhang (1999) état de l’art sur les problèmes de flow shop hybrides Pinedo (1995) solution optimale avec la règle SPT (Shortest Processing Time) pour Ci avec : toutes les opérations d’un même travail ont la même durée. résultat non valide avec le no-wait.

Définition des problèmes FH Problèmes de type Flow shop hybride : 1 machine au premier étage (le serveur) M machines parallèles identiques au deuxième étage n travaux avec deux opérations oi,1 et oi,2 de durée d’exécution pi,1 et pi,2. oi,1 est exécutée au premier étage et oi,2 au deuxième oi,1 est immédiatement suivie de oi,2 (no-wait) Toutes les machines ne peuvent exécuter qu’une opération à la fois Ces problèmes FH sont connus pour être NP-difficiles. p1,1 p4,2 p5,1 p4,1 p2,1 p3,1 p1,2 p5,2 p2,2 p3,2 M1,1 M2,1 M2,2

Exemple Diagramme de Gantt P,S Diagramme de Gantt FH S M1 M2 M1,1 M2,1 Serveur M1,1 p1,1 p5,1 p4,1 p2,1 p3,1 M2,1 p1,2 p4,2 p3,2 M2,2 p5,2 p2,2

Reduction Réduction : FH2,(1,P)|pi,1=s, no-wait| Ci se réduit au problème P,S1|si=s| Ci (Guirchoun et al., 2003) P2,S1|si=1| Ci O(nlog(n)) Pm,S1|si=1| Ci O(nlog(n)) pi≥m-2 P,S1|si=1| Ci NP-difficile P2,S1|si=s| Ci NP-difficile P,S1|pi=1, si=s| Ci O(n)  FH2,(1,P2)|pi,1=1, no-wait| Ci ?  FH2,(1,Pm)|pi,1=1, no-wait| Ci ?  FH2,(1,P)|pi,1=1, no-wait| Ci NP-difficile  FH2,(1,P2)|pi,1=s, no-wait|Ci NP-difficile  FH2,(1,P)|pi,1=s, pi,2=1, no-wait| Ci ? O(n)

Plusieurs cas ! SPT/FAM optimal pour P2||Ci Trois cas pour FH2,(1,P2)|pi,1=1, no-wait|Ci : Lorsque pi,2  2 pour tout travail i Lorsque pi,2 >2 pour tout travail i Algorithme pour pi,2 >0 pour tout travail i

pi,22 pour tout i Théorème : Preuve : Exemple : Ci = 67/3 Tout ordonnancement semi-actif est une solution optimale pour le problème FH2,(1,P2)|pi,1=1, pi,22, no-wait| Ci. Preuve : Ci=Ci,1+pi,2  1 machine toujours disponible au deuxième étage Ci = Ci,1+ pi,2  pi,2= K1 et Ci,1= n(n+1)/2 =K2  Ci = K Exemple : M1,1 3 5 2 1 4 i pi,1 pi,2 1 1/3 2 3 4 5 Ci = 67/3 M2,1 3 2 1 4 M2,2 5 t1=1 t2=2

pi,2>2 pour tout i Théorème : Démonstration Exemple : Ci=33 M1,1 1 SPT/FAM donne une solution optimale pour le problème FH2,(1,P2)|pi,1=1, pi,2>2, no-wait| Ci en O(n log(n)). Démonstration SPT/FAM  les Ci de deux travaux consécutifs ne coïncident jamais Pas de temps morts sur M2,1 et M2,2 (sauf [0,t1] sur M2,1 et [0,t2] sur M2,1) On se ramène au problème Pm||Ci pour lequel SPT/FAM donne l’optimal (Kaspi et Montreuil, 1988) Exemple : Ci=33 M1,1 1 5 4 2 3 i pi,1 pi,2 1 3 2 4 6 5 M2,1 1 4 3 M2,2 5 2 t1 t2

pi,2 quelconques Ci=39 Ci=38 SPT ne donne pas une solution optimale pour le problème FH2,(1,P2)|pi,1=1,no-wait| Ci Contre exemple M1,1 i pi,1 pi,2 1 2 3 4 5 6 1 2 3 4 5 6 M2,1 1 3 5 Ci=39 M2,2 2 4 6 M1,1 3 4 1 5 2 6 M2,1 Ci=38 3 1 5 M2,2 4 2 6

pi,2 >0 ≥m-1 Algorithme en O(n log(n)): Algorithme en O(n log(n)): 1=1, 2=2 ,…, m=m Déterminer A={ i | pi,2 =m-1} et B={ i | pi,2  m} Tant que AB Soit Mk,2 la machine telle que k=min{k | k = 1, …, m} Si (B =  ou i compatible de A alors) Placer l’opération oi,2 sur Mk,2 A  A \ {i} et k= k+ pi,2 Sinon Placer l’opération oi,2 de B de plus petit pi,2 sur Mk,2 B  B \ {i} et k= k+ pi,2 Fin si Fin tant que Algorithme en O(n log(n)): 1=1, 2=2 Déterminer A={ i | pi,2 =1} et B={ i | pi,2  2} Tant que AB Soit Mk,2 la machine telle que k=min{k | k = 1, 2} Si (B =  ou i compatible de A alors) Placer l’opération oi,2 sur Mk,2 A  A \ {i} et k= k+ pi,2 Sinon Placer l’opération oi,2 de B de plus petit pi,2 sur Mk,2 B  B \ {i} et k= k+ pi,2 Fin si Fin tant que

Exemple i 1 2 3 4 5 6 7 8 9 10 pi,1 pi,2 M1,1 5 6 7 1 8 2 9 3 4 10 M2,1 5 1 2 3 10 Ci=88 M2,2 6 8 4 M2,3 7 9 1 2 3 1 2 1 3 1 2 1 2 3 1

Lemme Pour tout ordonnancement : Démonstration par récurrence k, m  k  n : où p[i],2 correspond au travail de date de fin C[i] et où C[1]  C[2]  …  C[n] Démonstration par récurrence

Optimalité de l’Algorithme Deux sous ensembles : 1 =AB1 sous ensemble des travaux ordonnancés jusqu’au dernier travail appartenant à A={ i | pi,2 =m-1} 2 =B2 sous ensemble des travaux ordonnancés restant Avec B=B1B2 1=AB1 2=B2 M1,1 5 6 7 1 8 2 9 3 4 10 11 12 13 M2,1 5 1 2 3 10 13 M2,2 6 8 4 11 M2,3 7 9 12

Optimalité de l’Algorithme Principe : Tant que A  : Pas de temps mort au premier étage Ci,1= pi,1= cste s=i, 1=i+1, 2=i+2, …, m-1=i+m-1, m i+m Ci(1) est minimale Lorsque A = : SPT sur les travaux restants de B : Ci(2) est minimale Avec le Lemme On montre que la partition est bonne Ci = Ci(1)+ Ci(2) est minimale

Reduction P2,S1|si=1| Ci O(nlog(n))  FH2,(1,P2)|pi,1=1, no-wait| Ci Pm,S1|si=1| Ci O(nlog(n)) pi≥m-2 FH2,(1,Pm)|pi,1=1, no-wait| Ci O(nlog(n)) pi,2≥m-1 P,S1|si=1| Ci NP-difficile FH2,(1,P)|pi,1=1, no-wait| Ci P2,S1|si=s| Ci FH2,(1,P2)|pi,1=p, no-wait| Ci P,S1|si=s, pi=1| Ci O(n) FH2,(1,P)|pi,1=s, pi,2=1, no-wait| Ci

Conclusion Algorithme en O(n log(n)) pour résoudre FH2,(1,Pm)|pi,1=1, pi,2m-1, no-wait| Ci Les problèmes PS et FH2 avec nowait sont très voisins Contrainte de multiressource Ces deux modèles sont proches d’un réseau LAN Réseau simplifié

Perspectives Modification de l’algorithme pour qu’il soit optimal dans le cas des pi,2 quelconques Ou tester ses performances en tant qu’Heuristique Etendre la réduction à d’autres critères : Cmax,… Se rapprocher d’un réseau informatique : En supprimant le no-wait En incluant des temps de communication En ajoutant les contraintes de précédence En autorisant la préemption (systèmes multitâches) … D’autres modélisations: Environnement client-serveur : Blazewizc et al.(1996), mémoire tampon et recirculation « Multiprocessor tasks »