1 / 79

Verfahren zur Allokation von Hardwareressourcen in verteilten Systemen von Engelbert Barth und Harald Kolbe

Verfahren zur Allokation von Hardwareressourcen in verteilten Systemen von Engelbert Barth und Harald Kolbe. Agenda. 1 Einführung IT-Scheduling 2 IT-Scheduling vs. klassische Produktionsplanung 3 Optimierungspotential 4 Einordnung der Lösungsansätze 5 Statisches Scheduling

dory
Download Presentation

Verfahren zur Allokation von Hardwareressourcen in verteilten Systemen von Engelbert Barth und Harald Kolbe

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Verfahren zur Allokation von Hardwareressourcen in verteilten Systemen von Engelbert Barth und Harald Kolbe Verfahren zur Allokation von Hardware Ressourcen in verteilten Systemen

  2. Agenda 1 Einführung IT-Scheduling 2 IT-Scheduling vs. klassische Produktionsplanung 3 Optimierungspotential 4 Einordnung der Lösungsansätze 5 Statisches Scheduling 6 Dynamische Scheduling Problemebene Methoden-ebene Verfahren zur Allokation von Hardware Ressourcen in verteilten Systemen

  3. Agenda 1 Einführung IT-Scheduling 1.1 Definitionen 1.2 Problematik 1.3 Ziele 1.4 Praxisrelevanz 2 IT-Scheduling vs. klassische Produktionsplanung 3 Optimierungspotential 4 Einordnung der Lösungsansätze 5 Statisches Scheduling 6 Dynamische Scheduling Verfahren zur Allokation von Hardware Ressourcen in verteilten Systemen

  4. 1.1 Definitionen • Netzwerk • Infrastruktur für verteilte Systeme, die aus einer Menge autonomer Computer bestehen und somit eine Einheit bilden. • Ressourcen des verteilten Systems • Ergeben sich aus der Summe aller Ressourcen der Einzelnen angeschlossenen Systeme, hauptsächlich • Prozessorleistung, • Speicher, • Bandbreite. Verfahren zur Allokation von Hardware Ressourcen in verteilten Systemen

  5. 1.1 Definitionen • Tasks und Jobs • Ein Task ist die kleinste ausführbare Einheit. • Jeder auszuführende Prozess besteht aus mindestens einem Task. • Job und Auftrag werden synonym mit dem Begriff Prozess verwendet. Verfahren zur Allokation von Hardware Ressourcen in verteilten Systemen

  6. 1.2 Problematik • Kernproblem • Die Zuordnung der Aufgaben an die Aufgabenträger • Beachtung von Restriktionen • Knappe Ressourcen • Einhaltung von Dead-Lines Verfahren zur Allokation von Hardware Ressourcen in verteilten Systemen

  7. 1.3 Ziele • Ziele des IT-Scheduling • Minimierung der gesamten Auftragsbearbeitungsdauer • Effiziente Allokation der verfügbaren Ressourcen • Gleichmäßige Auslastung der verfügbaren Ressourcen  FAIRNESS Verfahren zur Allokation von Hardware Ressourcen in verteilten Systemen

  8. Fairness • Gleichmäßige Verteilung der Jobs auf die Ressourcen (entspr. Leistung) • Jeder Job soll mit verhältnismäßig gleicher Leistung abgearbeitet werden. • Vermeidung sinnlosen Datenverkehrs • Zeitersparnis durch parallele Nutzung aller Ressourcen • Sinnvoll bei ähnlicher Ausstattung aller beteiligten Ressourcen Verfahren zur Allokation von Hardware Ressourcen in verteilten Systemen

  9. 1.4 Praxisrelevanz • IT-Scheduling ist nicht nur ein Thema der Theorie. • Überall in Anwendung, meist ohne Kenntnis der Beteiligten Verfahren zur Allokation von Hardware Ressourcen in verteilten Systemen

  10. Mobilfunk • Scheduling der Ressource Bandbreite • Die Anfragen müssen alle bearbeitet werden.  Dynamisches Scheduling Verfahren zur Allokation von Hardware Ressourcen in verteilten Systemen

  11. Premiere • Pay-Per-View • Scheduling der Ressource Bandbreite und aller benötigten Ressourcen zur Bereitstellung des Films  Statisches Scheduling Verfahren zur Allokation von Hardware Ressourcen in verteilten Systemen

  12. Start des Betriebssystems • Betriebssystem ist selbst Scheduler • Der Start ist eine festgelegte Reihenfolge von Ausführungen • Hierfür werden alle Hauptressourcen benutzt.  Statisches Scheduling Verfahren zur Allokation von Hardware Ressourcen in verteilten Systemen

  13. Datenbanken • Scheduling notwendig, um gleichzeitige Schreibzugriffe zu vermeiden • Datenbank ist die Ressource (Speicher) • Beispiel Flugreservierung  Dynamisches Scheduling Verfahren zur Allokation von Hardware Ressourcen in verteilten Systemen

  14. Agenda 1 Einführung IT-Scheduling 2 IT-Scheduling vs. klassische Produktionsplanung 2.1 Die klassische Produktionsplanung 2.2 Gemeinsamkeiten und Unterschiede 3 Optimierungspotential 4 Einordnung der Lösungsansätze 5 Statisches Scheduling 6 Dynamische Scheduling Verfahren zur Allokation von Hardware Ressourcen in verteilten Systemen

  15. 2.1 Die klassische Produktionsplanung • Systematische Transformation von Inputs in Outputs • In- und Outputs können sein • Sachgüter • Dienstleistungen • Informationen • Existenz eines Produktionsprogramms • Produktionsprogrammplanung • Daraus folgt Maschinenbelegungsplan Verfahren zur Allokation von Hardware Ressourcen in verteilten Systemen

  16. Definitionen • Definitionen für die klassische Produktion gelten auch für das IT-Scheduling: „Untersuchungsobjekt der Güterwirtschaft sind Prozesse, zu deren Durchführung Güter (Sachgüter und Dienstleistungen) benötigt werden und deren Ergebnis durch Güter (Sachgüter und Dienstleistungen) gemessen werden kann.“ Verfahren zur Allokation von Hardware Ressourcen in verteilten Systemen

  17. Definitionen • Hauptaugenmerk gilt Prozessen (Jobs), zu deren Bearbeitung Ressourcen benötigt und deren immaterielles Ergebnis anhand bestimmter Qualitätsmerkmale gemessen werden kann. Verfahren zur Allokation von Hardware Ressourcen in verteilten Systemen

  18. Ziele • Entsprechung beider Scheduling-Arten • Folgende Ziele gelten für beide: • Minimierung der Durchlaufzeiten • Optimale Ausnutzung der gegebenen Kapazitäten • Einhaltung aller Restriktionen (Kapazitäten, Termine etc.) Verfahren zur Allokation von Hardware Ressourcen in verteilten Systemen

  19. Zeit • Zeit ist überall ein sehr wichtiger Faktor, jedoch • Modelle in der klassischen Produktion vernachlässigen die zurückzulegende Strecke eines Gutes. Im IT-Scheduling wird die Ressource Bandbreite belastet. • Kommunikationsumfang muss aus 2 Gründen im IT-Scheduling minimiert werden. Verfahren zur Allokation von Hardware Ressourcen in verteilten Systemen

  20. Ressourcen • Die Ressourcen unterscheiden sich natürlich • Begrenzte Anzahl von Ressourcen im IT-Scheduling • Prozessorleistung • Speicher • Bandbreite • Hingegen unzählige in der klassischen Produktion • Bauteile, Rohstoffe, Schrauben, Nägel, Maschinen, Werkzeuge, menschliche Arbeitskraft, etc. Verfahren zur Allokation von Hardware Ressourcen in verteilten Systemen

  21. Ressourcen • Unterteilung in Gebrauchs- und Verbrauchsfaktoren in der klassischen Produktion • Gebrauchsfaktoren • Maschinen • Gebäude • Verbrauchsfaktoren • Schmiermittel • Schrauben • In der IT existieren keine Verbrauchfaktoren, außer Energie Verfahren zur Allokation von Hardware Ressourcen in verteilten Systemen

  22. Ökonomie • Monetäre Effekte sind im IT-Scheduling nicht leicht bezifferbar. • In der klassischen Produktion sind die Kosten und Umsätze sehr einfach abzuleiten. Verfahren zur Allokation von Hardware Ressourcen in verteilten Systemen

  23. Lösungsmethoden • Durch die Ähnlichkeit beider Scheduling Arten sind sämtlich Theorien der klassischen Produktion übertragbar. • Dies sind vor allem die statischen Modelle, denn dynamische sind in der klassischen Produktion eher Ausnahmefall, wie z.B. das Kanban-Prinzip (auch nur für Fliessfertigung). Verfahren zur Allokation von Hardware Ressourcen in verteilten Systemen

  24. Agenda 1 Einführung IT-Scheduling 2 IT-Scheduling vs. klassische Produktionsplanung 3 Optimierungspotential 4 Einordnung der Lösungsansätze 5 Statisches Scheduling 6 Dynamische Scheduling Verfahren zur Allokation von Hardware Ressourcen in verteilten Systemen

  25. 3.1 Problemkomplexität • Verfahren zur Lösung solcher Probleme sind durch große Komplexität, d.h. durch einen sehr hohen Rechenaufwand gekennzeichnet. • Bsp.: Maschinenbelegungsproblem mit m Maschinen und n Aufträgen, wobei jeder Auftrag auf jeder Maschine bearbeitet werden muss, hat (n!)m verschiedene Lösungsmöglichkeiten. Bei n=5 und m=2 gibt es 14.400 Möglichkeiten. Verfahren zur Allokation von Hardware Ressourcen in verteilten Systemen

  26. 3.1 Problemkomplexität • 2 Klassen von Optimierungsproblemen: • Probleme mit polynomialem Aufwand lösbar, gehören zur Klasse P und werden „effizient lösbare“ Probleme genannt • Probleme mit nicht-polynomialem Aufwand lösbar, gehören zur Klasse NP-schwerer Probleme (engl. NP-hard) und werden als „schwer lösbare“ Probleme bezeichnet Verfahren zur Allokation von Hardware Ressourcen in verteilten Systemen

  27. DAG • Knoten: Task Ti mit Durchführungszeiten in ZE • Kanten: Vorrangige Beziehungen der Tasks, sowie evtl. Communication Delays, falls zwei aufeinander folgende Tasks auf unterschiedlichen Prozessoren durchgeführt werden T1 Task Ti Zeit 2 T2 T4 2 3 T3 1 T5 T6 3 3 T7 1 Directed acyclic Graph (DAG) Verfahren zur Allokation von Hardware Ressourcen in verteilten Systemen

  28. Zuteilung der Tasks Zuteilung der Tasks auf 3 Prozessoren: T1 Task Ti Zeit 2 T2 T4 2 3 T3 1 T5 T6 3 3 Zuteilung der Tasks auf 2 Prozessoren: T7 1 Directed acyclic Graph (DAG) Verfahren zur Allokation von Hardware Ressourcen in verteilten Systemen

  29. Communication Delays • 3 verschiedene Arten von Verzögerungen durch Kommunikationsdauer: • Dauer des Wechsels der Prozessoren zweier aufeinander folgender Tasks • Dauer der Koordination der zu verteilenden Aufträge (insb. im dynamischen Scheduling) • Dauer des kooperativen Verhaltens der Prozessoren (insb. im dynamischen Scheduling) Verfahren zur Allokation von Hardware Ressourcen in verteilten Systemen

  30. Communication Delays Kommunikationsverzögerungenmit Dx<1: T1 1 Dy Dx T2 T3 1 1 Kommunikationsverzögerungenmit Dx>1: keine Kommunikationsverzögerungenmit Dy=Dx=0: Verfahren zur Allokation von Hardware Ressourcen in verteilten Systemen

  31. Trade-Off • „There is a trade-off between taking advantage of maximal parallelism versus minimising the communication delay.“ • Eine Methode, die dieses Problem zu lösen versucht, ist das Duplizieren von Aufträgen.  Reduzierung der gesamtenKommunikationsverzögerungen und Maximierung der parallelenProzesse Verfahren zur Allokation von Hardware Ressourcen in verteilten Systemen

  32. Agenda 1. Einführung IT-Scheduling 2. IT-Scheduling vs. klassische Produktionsplanung 3. Optimierungspotential • Einordnung der Lösungsansätze 4.1 Das Klassifikationsschema 4.2 Problemraum vs. Lösungsraumsuche 5. Statisches Scheduling 6. Dynamische Scheduling Verfahren zur Allokation von Hardware Ressourcen in verteilten Systemen

  33. 4.1 Das Klassifikationsschema Scheduling lokal global statisch dynamisch optimal Sub-optimal physisch verteilt nicht physisch verteilt Näherung Heuristik kooperativ nicht kooperativ optimal Sub-optimal Näherung Heuristik Quelle: Casavant/Kuhl (1988) Verfahren zur Allokation von Hardware Ressourcen in verteilten Systemen

  34. Statisch: Alle Informationen über Aufträge und Maschinen stehen vor der Durchführung der Koordination fest. • Vorteil: nicht so zeitkritisch wie bei dynamischem Scheduling • Nachteil: realitätsfremd • Dynamisch: Aufträge werden spontan koordiniert. • Vorteil: realistischere Annahme Verfahren zur Allokation von Hardware Ressourcen in verteilten Systemen

  35. 4.1 Das Klassifikationsschema Scheduling lokal global statisch dynamisch optimal Sub-optimal physisch verteilt nicht physisch verteilt Näherung Heuristik kooperativ nicht kooperativ optimal Sub-optimal Näherung Heuristik Quelle: Casavant/Kuhl (1988) Verfahren zur Allokation von Hardware Ressourcen in verteilten Systemen

  36. Näherungsverfahren • Heuristiken • beinhalten Vorgehensregeln, die für die jeweilige Problemstruktur sinnvoll sind, z.B. Prioritätsregel-verfahren. • Metaheuristiken • Das jeweilige Grundprinzip zur Steuerung des Suchprozesses ist auf eine Vielzahl von Problemen und Nachbarschaftsdefinitionen anwendbar, z.B. lokales Verbesserungsverfahren, Simulated Annealing, Genetische Algorithmen, COSA. Verfahren zur Allokation von Hardware Ressourcen in verteilten Systemen

  37. Weitere Klassifikationsmöglichkeiten: • Adaptiv versus Non-adaptiv • Preemtive versus non-preemtive Verfahren zur Allokation von Hardware Ressourcen in verteilten Systemen

  38. 4.2 Problem-/Lösungsraumsuche • Problemraumsuche: • Das Problem wird in Teilprobleme zerlegt und sukzessive gelöst. Bsp.: Branch&Bound • Lösungsraumsuche: • Es wird die Menge möglicher Lösungen des Problems betrachtet und nach der opt. Lösung durchsucht. • Ziel: Finden des globalen Optimums. Verfahren zur Allokation von Hardware Ressourcen in verteilten Systemen

  39. Agenda 1. Einführung IT-Scheduling 2. IT-Scheduling vs. klassische Produktionsplanung 3. Optimierungspotential • Einordnung der Lösungsansätze • Statisches Scheduling 5.1 Parallelen zur phys. Produktion 5.2 Lösungsverfahren 6. Dynamische Scheduling Verfahren zur Allokation von Hardware Ressourcen in verteilten Systemen

  40. 5.1 Parallelen zur phys. Produktion • Es kann zwischen Auftrags- und Maschinencharakteristika unterschieden werden. • Gleiche Zielsetzungen, wie z.B. Minimierung der gesamten Durchlaufzeit Verfahren zur Allokation von Hardware Ressourcen in verteilten Systemen

  41. Maschinenbelegungsplanung Quelle: Vorlesung Modellierung betrieblicher Prozesse Verfahren zur Allokation von Hardware Ressourcen in verteilten Systemen

  42. Kombinatorische Optimierung • Maschinenbelegungsplanung, Travelling-Salesman-Problem und allgemeine Tourenplanungsprobleme gehören in die Gruppe der Reihenfolgeprobleme der kombinatorischen Optimierung. • Lösung solcher Probleme durch exakte Verfahren oder Heuristiken Verfahren zur Allokation von Hardware Ressourcen in verteilten Systemen

  43. 5.2 Lösungsverfahren • Exakte Verfahren • Vollständige Enumeration • Branch & Bound • Heuristische Verfahren • Prioritätsregelverfahren • Metaheuristiken • Lokale Verbesserungsverfahren • Simulated Annealing • Genetische Algorithmen Verfahren zur Allokation von Hardware Ressourcen in verteilten Systemen

  44. Exakte Verfahren • Vollständige Enumeration: • Es werden alle zulässigen Lösungen ermittelt und durch Vergleich die optimale Lösung gefunden. • Branch & Bound: • Das Problem wird in kleine Teilprobleme unterteilt. In den Teilproblemen wird nach bestimmten Vorgehensregeln das Optimum ermittelt. Verfahren zur Allokation von Hardware Ressourcen in verteilten Systemen

  45. Prioritätsregelverfahren • Prioritätsregelverfahren geben den zu beurteilenden Aufträgen mit Hilfe einer Prioritätsregel einen Rang. • Anschließend werden sie ihrer Reihenfolge nach abgearbeitet. Verfahren zur Allokation von Hardware Ressourcen in verteilten Systemen

  46. Prioritätsregelverfahren • Beispiele für Prioritätsregelverfahren: • Warte-Regel: Vorrang hat der Auftrag mit der längsten Wartezeit vor der betreffenden Maschine • Liefertermin-Regel: Höchste Priorität für den Auftrag mit dem frühesten Liefertermin • Kürzeste-Operationszeit-Regel: Höchste Priorität dem Auftrag, der die geringste Bearbeitungszeit auf der zu belegenden Maschine benötigt Verfahren zur Allokation von Hardware Ressourcen in verteilten Systemen

  47. Lokales Verbesserungsverfahren • Verfahren der Lösungsraumsuche • Gesamten Raum aller möglichen Lösungen eines Problems bezeichnet man als Suchraum S Verfahren zur Allokation von Hardware Ressourcen in verteilten Systemen

  48. Lokales Verbesserungsverfahren • Vorgehensweise: • Zulässige Lösung si in S wird gefunden (Ausgangslösung) • Durch eine gewisse Transformationsvorschrift entstehen Nachbarlösungen, z.B. durch Vertauschung von Elementen innerhalb einer Reihenfolge. • Ist die Nachbarlösung besser, wird die Ausgangslösung durch die neue substituiert. • Es werden nur Verbesserungen akzeptiert. Verfahren zur Allokation von Hardware Ressourcen in verteilten Systemen

  49. Lokales Verbesserungsverfahren • Problem: Verfahren kann in einem lokalen Optimum enden • Probleme bei der Auswahl der Nachbarschaft: • zu große Nachbarschaft: • Pro Suchschritt müssen zu viele Nachbarn evaluiert werden. • Das Suchverfahren wird zu langsam und gleicht einer Zufallssuche. • zu kleine Nachbarschaft: • Höhere Zahl lokaler Optima, aus denen das Suchverfahren nicht mehr herausfindet Verfahren zur Allokation von Hardware Ressourcen in verteilten Systemen

  50. Maschinenbelegungsplanung Maschinenfolgegraph: 1 2 3 1 3 1 2 2 Auftrag j 1 3 2 3 Quelle: Vorlesung Modellierung betrieblicher Prozesse Verfahren zur Allokation von Hardware Ressourcen in verteilten Systemen

More Related