268
5 Bewertung und Validierung
Trotz der Verwendung des Begriffs „geschätzte“ handelt es sich um sichere Schranken.
In einigen Fällen werden Architektureigenschaften, welche die durchschnittliche
Ausführungszeit senken, aber nicht garantieren können, dass auch die WCET sinkt,
in Echtzeitsystemen nicht weiter berücksichtigt (siehe Seite 169). Die Berechnung
guter oberer Grenzen für die Ausführungszeit kann aber dennoch schwierig sein.
Die oben beschriebenen Architektureigenschaften stellen auch ein Problem für die
Berechnung der WCET EST dar. Für Mehrkern-Systeme ist die Berechnung guter
oberer Schranken noch schwieriger als für einzelne Kerne, da die zeitlichen Beeinflussungen häufig schwierig zu modellieren sind. Tatsächlich kann es mögliche
Ressourcenkonflikte geben, die zur Folge haben, dass Mehrkern-Systeme größere
Schranken haben als Einkern-Systeme.
Definition 5.10: Die kleinstmögliche Ausführungszeit (engl. Best Case Execution
Time (BCET)) eines Programms ist die kürzeste Ausführungszeit, die unter allen
möglichen Eingaben und Anfangszuständen möglich ist. BCET EST ist eine sichere
und gute untere Schranke für die Ausführungszeit.
Die Berechnung guter Grenzen für ein in einer Hochsprache wie C geschriebenes
Programm ist ohne Kenntnis des erzeugten Assemblercodes und der verwendeten
Architektur nicht möglich. Daher muss eine sichere Analyse den Maschinencode
betrachten. Alle anderen Ansätze würden zu unsicheren Ergebnissen führen.
Im Folgenden befassen wir uns im Detail mit der Abschätzung der WCET. Diese Darstellung basiert auf der Beschreibung des Werkzeugs aiT von R. Wilhelm
[587]. Die Architektur von aiT ist in Abb. 5.5 dargestellt. Unseren Erkenntnissen
ILPCache/Fließbandanalyse
Werteanalyse
CFG builder
Analysen
Schleifengrenzen
Schleifentransform.
CRL-Datei
AIP-Datei
PER-Datei
WCET
Visualisierung
Statische
Evaluierung
ILP-Generator
Binärer Code
Pfadanalysen
Solver
Abb. 5.5 Architektur des Timinganalyse-Werkzeugs aiT
5 Bewertung und Validierung
Trotz der Verwendung des Begriffs „geschätzte“ handelt es sich um sichere Schranken.
In einigen Fällen werden Architektureigenschaften, welche die durchschnittliche
Ausführungszeit senken, aber nicht garantieren können, dass auch die WCET sinkt,
in Echtzeitsystemen nicht weiter berücksichtigt (siehe Seite 169). Die Berechnung
guter oberer Grenzen für die Ausführungszeit kann aber dennoch schwierig sein.
Die oben beschriebenen Architektureigenschaften stellen auch ein Problem für die
Berechnung der WCET EST dar. Für Mehrkern-Systeme ist die Berechnung guter
oberer Schranken noch schwieriger als für einzelne Kerne, da die zeitlichen Beeinflussungen häufig schwierig zu modellieren sind. Tatsächlich kann es mögliche
Ressourcenkonflikte geben, die zur Folge haben, dass Mehrkern-Systeme größere
Schranken haben als Einkern-Systeme.
Definition 5.10: Die kleinstmögliche Ausführungszeit (engl. Best Case Execution
Time (BCET)) eines Programms ist die kürzeste Ausführungszeit, die unter allen
möglichen Eingaben und Anfangszuständen möglich ist. BCET EST ist eine sichere
und gute untere Schranke für die Ausführungszeit.
Die Berechnung guter Grenzen für ein in einer Hochsprache wie C geschriebenes
Programm ist ohne Kenntnis des erzeugten Assemblercodes und der verwendeten
Architektur nicht möglich. Daher muss eine sichere Analyse den Maschinencode
betrachten. Alle anderen Ansätze würden zu unsicheren Ergebnissen führen.
Im Folgenden befassen wir uns im Detail mit der Abschätzung der WCET. Diese Darstellung basiert auf der Beschreibung des Werkzeugs aiT von R. Wilhelm
[587]. Die Architektur von aiT ist in Abb. 5.5 dargestellt. Unseren Erkenntnissen
ILPCache/Fließbandanalyse
Werteanalyse
CFG builder
Analysen
Schleifengrenzen
Schleifentransform.
CRL-Datei
AIP-Datei
PER-Datei
WCET
Visualisierung
Statische
Evaluierung
ILP-Generator
Binärer Code
Pfadanalysen
Solver
Abb. 5.5 Architektur des Timinganalyse-Werkzeugs aiT
