PARS-Mitteilungen 2007 - Parallel-Algorithmen, -Rechnerstrukturen ...
PARS-Mitteilungen 2007 - Parallel-Algorithmen, -Rechnerstrukturen ...
PARS-Mitteilungen 2007 - Parallel-Algorithmen, -Rechnerstrukturen ...
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
spruchten Verarbeitungseinheiten [22] ebenfalls betrachtet. In den meisten Arbeiten werden<br />
Scheduling-Heuristiken ausschlieÿlich untereinander verglichen entweder aufgrund des<br />
mit der Berechnung optimaler Schedules verbundenen Aufwands oder wegen der Gröÿe der<br />
Testfälle, die eine Berechnung optimaler Ergebnisse ausschlieÿt. In früheren Arbeiten der<br />
Autoren [17,18] wurden bereits bei homogene Zielsystemen Vergleiche zwischen heuristisch<br />
berechneten und optimalen Schedules durchgeführt. In [18] ndet sich auÿerdem ein Vergleich<br />
zwischen verschiedenen deterministischen Listen-Verfahren und auf Meta-Heuristiken<br />
basierenden Schedulern, bei denen die letzgenannten in vielen Fällen zu den besseren Ergebnissen<br />
gelangen.<br />
3 Untersuchte Verfahren<br />
Dem vorigen Abschnitt war bereits zu entnehmen, dass viele der bisher entwickelten Scheduling-Heuristiken<br />
zu den Listen-Verfahren gehören, bei denen die Berechnung eines Schedules<br />
in zwei aufeinanderfolgenden Arbeitschritten erfolgt, die durch eine Scheduling-Liste<br />
verbunden sind. Diese wurde vom Priorisierer erzeugt und enthält alle Tasks in einer topologisch<br />
sortierten Reihenfolge. Während für die Priorisierung bereits eine groÿe Zahl unterschiedlicher<br />
Verfahren entwickelt wurde [3], beruht der Mapping-Schritt bei den meisten<br />
Listen-Verfahren auf einem Greedy-Mapper. In dieser Arbeit werden hingegen die von alternativen<br />
Mapper berechneten Schedules mit denen eines Greedy-Mappers verglichen. Um die<br />
Objektivität dieses Vergleichs nicht durch die Wahl des Priorisierers zu gefährden, erfolgt die<br />
Priorisierung bei allen Untersuchungen mit Hilfe eines Zufallsverfahrens, das eine zufällige<br />
aber topologisch sortierte Scheduling-Liste berechnet. Neben dem Greedy-Mapper werden<br />
dabei drei auf Meta-Heuristiken (GA, ACO und SA) basierende Mapping-Verfahren sowie<br />
ein optimaler Mapper betrachtet. Letzterer kann jedoch aufgrund seiner langen Laufzeit<br />
ausschlieÿlich für einen Teil der Untersuchungen herangezogen werden.<br />
Das untersuchte Greedy-Mapper-Verfahren folgt dem so genannten 'non-insertion'-Ansatz,<br />
bei dem neue Tasks nur hinter die letzte der Verarbeitungseinheit zugewiesenen Task<br />
angefügt werden verarbeitungsfreie Zeiten zwischen zwei bereits eingeplanten Tasks dürfen<br />
nicht genutzt werden. Die einzuplanenden Tasks werden in der durch die Scheduling-Liste<br />
vorgegebenen Reihenfolge jeweils der Verarbeitungseinheit des Zielsystems zugewiesen, auf<br />
der die Verarbeitung der Task frühestmöglich abgeschlossen werden kann.<br />
Das auf einem Genetischen Algorithmus basierende Mapping-Verfahren, nachfolgend<br />
GA-Mapper genannt, folgt dem allen GAs typischen Schema, bei dem eine Population aus<br />
mehreren Individuen mehrere Generationen durchläuft. Die einzelnen Individuen werden<br />
gemäÿ ihrer Fitness bewertet, welche Auskunft über die Güte der durch das Individuum<br />
repräsentierten Lösung gibt. Bei GA-Mapper wird die Fitness F eines Individuums I über<br />
den Quotient<br />
SL(I) − minSL<br />
F (I) = 1 − (1)<br />
maxSL − minSL<br />
berechnet, wobei SL(I) die Schedule-Länge des durch I vertretenen Schedules und minSL<br />
und maxSL die minimal bzw. maximale Schedule-Länge aller Individuen der aktuellen Generation<br />
bezeichnet. Die Fitness eines Individuum liegt somit im Wertebereich [0, 0; 1, 0]<br />
und ist von der absoluten Schedule-Länge unabhängig. Sie ist jedoch um so höher, je kürzer<br />
der repräsentierte Schedule ist. Anhand der Fitness werden mit Hilfe eines Roulette-Wheel-<br />
Verfahrens die Individuen für die nachfolgende Generation selektiert. Zu diesem Zweck werden<br />
die Fitnesswerte aller Individuen addiert und ein Zufallswert zwischen 0,0 und dieser<br />
Summe ermittelt. Anschlieÿend werden die Fitnesswerte der Individuen ebenfalls aufsummiert<br />
und das Individuum, bei dem die dabei berechnete Teilsumme den Grenzwert über-<br />
40