PARS-Mitteilungen 2007 - Parallel-Algorithmen, -Rechnerstrukturen ...
PARS-Mitteilungen 2007 - Parallel-Algorithmen, -Rechnerstrukturen ...
PARS-Mitteilungen 2007 - Parallel-Algorithmen, -Rechnerstrukturen ...
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
2 Themenverwandte Arbeiten<br />
Scheduling-Probleme werden bereits seit mehreren Jahrzehnten von Wissenschaftlern auf<br />
der ganzen Welt untersucht. Die <strong>Parallel</strong>en Programme werden dabei ebenso wie die für<br />
ihre Ausführung vorgesehenen Zielsysteme mit Hilfe von Modellen beschrieben, die eine gute<br />
Annäherung an die tatsächlich vorhandenen Gegebenheiten anstreben sollen. Eine weite<br />
Verbreitung haben dabei insbesondere solche Scheduling-Modelle gefunden, bei denen Task-<br />
Graphen in homogenen Systemumgebungen [3,15,16,21,23] oder voneinander unabhängig<br />
Jobs in heterogenen Zielsystemen ausgeführt werden sollen [28,29,33]. Scheduling-Probleme,<br />
bei denen voneinander abhängige Tasks in einer heterogenen Systemumgebung verarbeitet<br />
werden sollen, werden erst seit wenigen Jahren intensiver betrachtet [14]. Allerdings werden<br />
auch bei diesen Arbeiten häug einschränkende Annahmen an die Heterogenität des<br />
Zielsystems gemacht.<br />
Das allgemeine Scheduling-Problem ist NP-vollständig [11] und nur in sehr wenigen,<br />
besonders einfachen Sonderfällen siehe hierzu Kwok und Ahmad [23] kann auch für<br />
gröÿere Problemstellungen eine optimale Lösung berechnet werden. In der Literatur werden<br />
daher zahlreiche heuristische Verfahren vorgeschlagen, mit deren Hilfe möglichst gute,<br />
aber nicht notwendigerweise optimale Schedules für ein gegebenes Scheduling-Problem berechnet<br />
werden können. Optimale Scheduler wurden ausschlieÿlich für die Bewertung von<br />
Scheduling-Heuristiken [2,15,16,21,24] anhand kleiner Testfälle eingesetzt.<br />
Wie bereits in der Einführung erläutert wurde, gehört ein groÿer Teil der bekannten<br />
Scheduling-Heuristiken zur Gruppe der so genannten Listen-Verfahren, für die eine Übersicht<br />
bei Kwok und Ahmad [23] zu nden ist. In der jüngeren Vergangenheit wurden jedoch auch<br />
zahlreiche auf Meta-Heuristiken basierenden Verfahren veröentlicht. 'Eine Meta-Heuristik<br />
ist ein generischer Algorithmus, der die Verarbeitung mindestens einer untergeordneten (lokalen)<br />
Heuristik, die auf das gegebene Problem spezialisiert ist, leitet' [3]. Einen Überblick<br />
über die verbreiteten Meta-Heuristiken nden man ebenso wie eine Diskussion ihrer spezischen<br />
Eigenschaften bei Blum und Roli [5]. Unter den dort behandelten Verfahren benden<br />
sich auch die im Folgenden noch ausführlicher dargestellten Meta-Heuristiken Genetische<br />
<strong>Algorithmen</strong> (GA), Ant Colony Optimization (ACO) und Simulated Annealing (SA).<br />
Die von John Holland Mitte der 70er Jahre eingeführten Genetischen <strong>Algorithmen</strong> betrachten<br />
eine Menge potentieller Lösungen (Individuen), die sie unter Anwendung der Operatoren<br />
Selektion, Crossover und Mutation in einer neue Generation überführen. Allgemeine<br />
Abhandlungen zu Genetischen <strong>Algorithmen</strong> nden sich bei Goldberg [12] und bei Schöneburg<br />
et al. [30]. Im Bereich des Schedulings werden GA bereits seit den frühen 90er Jahren<br />
verstärkt eingesetzt. Die vorgestellten Verfahren unterscheiden sich nicht nur bezüglich<br />
der Realisierung der verwendeten Operatoren, sondern auch hinsichtlich der Form, in der<br />
die betrachteten Schedules durch die Individuen des Genetischen Algorithmus repräsentiert<br />
werden [10,21]. Zudem werden auch Kombinationen mit anderen Strategien, beispielsweise<br />
Listen-Verfahren [13] oder Simulated Annealing [1] betrachtet.<br />
ACO-Verfahren modellieren die indirekte Kommunikation futtersuchender Ameisen zum<br />
Aunden eines kürzesten Weges zwischen einer Futterquelle und ihrem Nest. Obwohl diese<br />
Meta-Heuristik erst in den 90er Jahren eingeführt wurde, ndet sich in der Literatur bereits<br />
eine groÿe Zahl von Einsatzgebieten zu denen auch verschiedene Formen von Scheduling-<br />
Problemen [3,25,28,29,31] gehören. So untersucht Ritchie [28,29] ein auf ACO basierendes<br />
Scheduling-Verfahren, mit dem die Ausführung voneinander unabhängiger Jobs in heterogenen<br />
Systemumgebungen geplant wird. Das von Bank et al. [3] vorgestellte Verfahren wurde<br />
hingegen für das Scheduling von Task-Graph-Strukturen in homogenen Zielsystemen entwickelt.<br />
Es handelt sich dabei um ein Listen-Verfahren, bei dem die Priorisierung durch einen<br />
ACO-Algorithmus erfolgt und das Mapping durch einen Greedy-Mapper realisiert wird.<br />
38