Die aiT-Analyseergebnisse sind nicht nur sicher — d.h., sie liegen niemals unter der tat­säch­li­chen WCET —, sondern auch außerordentlich präzise — d.h., die WCET-Überschätzung wird stets möglichst gering gehalten. Dies wird immer wieder durch unsere eigenen Versuche, die Berichte unserer Kunden, sowie durch unabhängige Studien bestätigt.

Studie Prozessor Durchschnittliche WCET-Überschätzung
aiT Andere Methoden
Tests am Airbus-Code MPC755 <25% “unbrauchbar”
Tests am Volvo-Code C16x 16% 212%
Tests mit ASCET ST10 3% -
aiT gegen ARMulator ARM7 5% -
WCET-Tool-Challenge C16x, ARM7, MPC565 7–8% >81%

Studie von Airbus France (aiT für PowerPC 755)

AIRBUS-Logo
“Der Vergleich zeigt, daß die von aiT berechneten Worst-Case-Laufzeiten typischerweise rund 25% höher sind als die gemessenen Zeiten, wobei die tatsächliche aber nicht berechenbare WCET irgendwo dazwischen liegt. Erwähnenswert ist auch ein weiterer Vergleich, nämlich der der aiT-Analyseergebnisse mit den Ergebnissen der traditionellen Airbus-Methoden. Wie bereits vorhergesagt wurde, als die Entscheidung für aiT fiel, sind die Ergebnisse der traditionellen Methoden weitaus ungenauer als die von aiT berechneten Zeiten. Eigentlich ist der Unterschied sogar so groß, daß die traditionellen Methoden unbrauchbar sind.”

Die Studie stammt aus dem Jahre 2003. aiT wurde seitdem ständig weiterentwickelt, so daß die aktuelle Version noch viel genauere Ergebnisse liefert.

Studie am Volvo-Code an der Mälardalen-Universität (aiT für C16x)

VOLVO-Logo

In seiner Diplomarbeit “Statische WCET-Analyse von task­orientiertem Code für Baufahrzeuge” berichtete Daniel Sehlberg, daß aiT die ge­messene WCET im Schnitt um nur 16% überschätzt. Zugleich über­schätzten Volvos traditionelle Methoden die WCET derselben Tasks im Schnitt um 212%.

Vergleich der aiT-Analyseergebnisse mit Volvos traditioneller Methode

Tests mit ETAS’ ASCET (aiT für ST10)

ETAS-Logo

Die nachfolgende Tabelle vergleicht die aiT-Analyseergebnisse mit der gemessenen WCET für die Prozeduren eines Engine-Throttle-Kontrollmoduls. Das Modul wurde in ASCET spezifiziert und mit dem TASKING-C-Compiler v7.5 für ein ST10F269-Mikrocontroller-Board kompiliert. Die Laufzeiten wurden mit dem iSYSTEMS-ILA-128-Logic-Analyzer aus Bus-Traces extrahiert. Das Experiment zeigte eine durchschnittliche WCET-Überschätzung von nur 3%.

Prozedur WCET (in Zyklen) Überschätzung
Gemessen Von aiT berechnet
1 291 291 0,0%
2 6 6 0,0%
3 26 26 0,0%
4 263 283 7,6%
5 263 283 7,6%
6 263 283 7,6%
7 2980 3138 5,3%
8 133 133 0,0%
9 109 110 0,9%
10 116 117 0,9%

aiT für ARM7 gegen ARMulator

ARM-Logo

ARMulator ist ein Prozessor-Simulator, der von ARM als Bestandteil des ARM-Development-Toolkits angeboten wird. Er ermöglicht es, das Verhalten eines Programms für einen bestimmten ARM-Prozessor einzuschätzen, ohne das Programm tatsächlich auf dem Prozessor auszuführen.

Eine von Daniel Sandell an der Mälardalen-Universität durchgeführte Studie zeigte, daß die von aiT berechneten Worst-Case-Laufzeiten im Schnitt nur 5% höher lagen als die Ergebnisse der Simulation mit ARMulator.

Testprogramm WCET (in Zyklen) Quotient aiT/ARMulator
ARMulator aiT
Array_complex_updates 2399 2539 1,06
Array_real_updates 1263 1307 1,03
Biquad_one_section 150 167 1,11
Convolution_filter 660 703 1,07
Complex_multiply 172 190 1,10
Complex_update 104 121 1,16
Digital_filter 978 1022 1,04
Dot_product 95 108 1,14
Fibonacci 522 532 1,02
Impulse_response 1520 1598 1,05
Matrix_convolution 7096 7401 1,04
Matrix_product_1 37887 39900 1,05
Matrix_product_2 34787 36800 1,06
Matrix_product_3 317 345 1,09
Matrix_product_4 5185 5442 1,05
Real_update 55 66 1,20
“aiTs Vorhersagen waren in sämtlichen Fällen höher als die Simulationsergebnisse. Wir bewerten das positiv, als ein Zeichen, daß die aiT-Analyseergebnisse sicher sind. Zuletzt sollte man anmerken, daß [in unserem Test] die aiT-Ergebnisse nicht mit dem Verhalten der tatsächlichen Hardware, sondern mit dem eines Hardware-Modells verglichen wurden.”

WCET-Tool-Challenge (aiT für C16x, aiT für ARM7 und aiT für PowerPC 565)

ARTIST2-Logo

2006 nahm aiT an der ersten WCET Tool Challenge teil, einem von der Mälardalen-Universität organisierten und vom ARTIST2-Netzwerk geförderten Wettbewerb. Das erklärte Ziel des Wettbewerbs war es, verschiedene Me­tho­den der WCET-Analyse zu untersuchen und miteinander zu vergleichen. Teilgenommen haben alle zu der Zeit erhältlichen Werkzeuge und Prototypen.

aiT trat als einziges Werkzeug gleich für 3 verschiedene Prozessor-Architekturen an. Es war das einzige Werkzeug, das sämtliche Testprogramme zu analysieren imstande war. Die von aiT gelieferten Ergebnisse waren in den meisten Fällen außerordentlich genau. Das Urteil der Jury lautete, daß aiT sehr benutzerfreundlich ist, den Benutzer vor unrealistischen Code-Annotationen warnt und sehr präzise Analyseergebnisse liefert.

Werkzeug Durchschnittliche WCET-Überschätzung Durchlaufene Tests Prozessorkomplexität
aiT 7–8% 17/17 einfach bis hochkomplex
Bound-T k. A. 13/17 einfach, mittel
SWEET k. A. 15/17 mittel
Chronos 81–89% 13/17 simulierter Prozessor
“ aiT war imstande, alle Arten von Tests zu bewältigen und für sämtliche Testprogramme Er­geb­nisse zu liefern. aiT ermöglicht WCET-Analyse selbst für komplexe Prozessoren. […] aiT demonstriert seine führende Position durch all seine Merkmale und untermauert seine Führung als ein den Anforderungen der Industrie gewachsenes Werkzeug.”