374
6 Abbildung von Anwendungen
abbilden [195], dabei verwendet es Berechnungsmodelle, die von den PtolemyWerkzeugen unterstützt werden. Einige Werkzeuge berücksichtigen zudem weitere
Ziele. So behandelt Xu zum Beispiel die Optimierung der zuverlässigen Lebensdauer des resultierenden Systems [605]. Simunic betrachtet in ihren Arbeiten zusätzlich
eine Temperaturanalyse und versucht, die Entstehung zu heißer Stellen auf dem MPSoC zu vermeiden [492]. Weitere Arbeiten finden sich bei Popovici et al. [457]. Er
verwendet verschiedene Ebenen der Modellierung unter Verwendung der Sprachen
Simulink und SystemC.
Ansätze zur automatischen Parallelisierung für festgelegte Architekturen finden
sich bei Arbeiten an der Universität von Edinburgh [168]. Die MAPS-Werkzeuge [88] verbinden automatische Parallelisierung mit einer eingeschränkten Form
der Entwurfsraumerkundung. Cordes [110] hat eine automatische Parallelisierung
für Mehrkern-Systeme entwickelt, die ein Kostenmodell auf einer hohen Ebene
benutzt. Eine automatische Parallelisierung wurde auch von Neugebauer et al. [417]
entwickelt. Sie wurde zur Optimierung eines innovativen Sensors für Bio-Viren,
einem cyber-physikalischen System, benutzt.
6.5.5 Dynamisches und Hybrides Scheduling
Beim dynamischen Scheduling erfolgt die Prozessorzuordnung zur Laufzeit und
nicht zur Entwurfszeit. Dynamisches Scheduling hat eine Reihe von Vorteilen [493]:
• Anpassbarkeit an die verfügbaren Ressourcen: Dynamisches Scheduling kann
sich anpassen, wenn sich die Verfügbarkeit von Ressourcen wie Energie, Speicherplatz oder Kommunikationsbandbreite ändert.
• Anpassbarkeit an sich ändernde Ressourcenanforderungen: Änderungen bezüglich der Anforderungen der Anwendungen (wie z.B. ein wachsender Speicherbedarf) sind leichter zu integrieren, wenn das Scheduling dynamisch ist.
• Elastizität in Bezug auf Defekte: Ressourcendefekte können mit einem dynamischen Scheduling leichter berücksichtigt werden.
• Benutzung von nicht echtzeitfähigen Plattformen: Dynamisches Scheduling ist
bei nicht echtzeitfähigen Rechnern der Standard. Daher können Techniken dieser
Plattformen eingesetzt werden, was den Entwicklungsaufwand reduziert.
Allerdings gibt es auch Nachteile:
• Fehlende Garantien für das Echtzeitverhalten: in einem vollständig dynamischem Schedule ist es schwer, wenn nicht unmöglich, Garantien für das Einhalten
von Echtzeitbedingungen zu geben.
• Laufzeit-Overhead: dynamisches Scheduling erfordert Rechenzeit, um Entscheidungen zu treffen. Daher müssen komplexe Scheduling-Techniken vermieden
werden.
• Beschränktes Wissen: zur Laufzeit ist üblicherweise nur ein sehr begrenztes
Wissen über das Task-System und seine Parameter bekannt.
Précédent

- 393/485

Suivant