25.10.2012 Aufrufe

Generierung lokaler Optimierungen - IPD Snelting

Generierung lokaler Optimierungen - IPD Snelting

Generierung lokaler Optimierungen - IPD Snelting

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

zusätzliche Testvektoren Zeugen kombiniert<br />

5 Evaluation<br />

1000/2000 1000/1000 1000/100 1000/0 1000/1000 2000/1000<br />

Vorabtests 1 177 108 1 177 264 1 180 883 1 180 883 1 177 264 1 067 103<br />

Erfüllbarkeitstests 971 915 945 897 1 086 231 413 454 378 485 379 988<br />

Vorabtest Fehlentsch. 66,26% 69,97% 65,35% 22,31% 14,07% 15,02%<br />

Mustererzeugung 61 s 63 s 59 s 64 s 61 s 62 s<br />

Regel anwendbar 531 s 534 s 526 s 552 s 543 s 539 s<br />

Vorabtest 3 031 s 2 874 s 2 882 s 3 602 s 3 252 s 2 370 s<br />

Erfüllbarkeitstest 2 845 s 2 790 s 2 882 s 1 598 s 1 530 s 1 528 s<br />

Gesamtlaufzeit 6 468 s 6 263 s 6 349 s 5 815 s 5 386 s 4 499 s<br />

Tabelle 5.2: Optgen Ausführungsstatistik für unterschiedliche Konfigurationen des Vorabtests,<br />

Kostenstufe: 2, Operationen: not, neg, or, and, xor, add, sub, mul.<br />

Der Erfüllbarkeitstest lässt sich nicht durch Parameter beeinflussen und ist auf die Qualität<br />

des Vorabtests angewiesen, um weniger Laufzeit zu benötigen, also weniger Muster<br />

behandeln zu müssen. Daher wird im Folgenden der Einfluss des Vorabtests bei unterschiedlicher<br />

Parametrisierung untersucht. Die Ergebnisse sind in Tabelle 5.2 zusammengefasst.<br />

Evaluiert wurden unterschiedliche Konfigurationen des Vorabtests. Die ersten drei Messungen<br />

betrachten eine feste Anzahl von Testvektoren (1000 Stück) für die Ermittlung<br />

der Hash-Klasse M h(m), sowie je 2000, 1000 und 100 zusätzliche Testvektoren<br />

tv ∈ T VADD, mit denen die Muster einer Hash-Klasse gefiltert werden. Die Verwendung<br />

von Testvektoren (Zeugen), die sich aus dem Erfüllbarkeitstest ergeben, wurde<br />

hierzu deaktiviert. Die vierte Messung untersucht, wie sich der Vorabtest gegenüber den<br />

vorherigen drei Testfällen verhält, wenn die Muster einer Hash-Klasse nur mit Zeugen<br />

aus dem Erfüllbarkeitstest gefiltert werden. Die fünfte und sechste Messung betrachtet<br />

eine Kombination beider Ansätze. Hierbei wurde die Anzahl der Testvektoren, die zur<br />

Berechnung des Hashwerts verwendet werden variiert (1000 und 2000 Testvektoren). Tabelle<br />

5.2 zeigt neben den Laufzeiten der einzelnen Phasen von Optgen auch die Anzahl<br />

der durchgeführten Vorabtests, die Anzahl der durchgeführten Erfüllbarkeitstest und<br />

den prozentualen Anteil an Fehlentscheidungen, die der Vorabtest trifft. Eine Fehlentscheidung<br />

des Vorabtests liegt dann vor, wenn zwei Muster vom Vorabtest als äquivalent<br />

angesehen werden, der Erfüllbarkeitstest dies aber widerlegt.<br />

Die Anzahl der Fehlentscheidungen ohne die Verwendung von Zeugen erscheint mit mehr<br />

als 65% hoch. Wie Tabelle 5.2 zeigt, bringt der Mehraufwand durch eine größere Anzahl<br />

zusätzlicher Testvektoren nicht zwangsläufig auch eine geringere Fehlentscheidungsrate<br />

oder Gesamtlaufzeit. Das Verhältnis aus Kosten und Nutzen ist für die getestete Konfiguration<br />

mit 1000 zusätzlichen Testvektoren am besten, obwohl die Fehlentscheidungsrate<br />

mit 69,97% am höchsten ist. Die Verwendung von Zeugen bringt eine deutliche Verbesserung,<br />

wie sich an der niedrigeren Fehlentscheidungsrate von 22,31% und an der<br />

69

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!