Rechnerhersteller praeparieren ihre Geraete speziell fuer Tests Kleine Compiler-Tricks machen Leistungsvergleiche schwierig

14.01.1994

MUENCHEN (CW) - Die Messwerte Specfp92, Specint92 und Specmark liefern einen Anhaltspunkt zur Einschaetzung der Leistung eines Rechners. Doch wie objektiv sind diese Messungen? Innerhalb der Spec-Gemeinde stoesst man sich vor allem an der Vielzahl von Compiler-Optionen, die einzelne Rechnerhersteller fuer die Tests der System Performance Evaluation Cooperation (Spec) verwenden.

Ein Beispiel: Ein Hersteller nutzte fuer einen Spec-Einzeltest die folgenden Compiler-Optionen:

"-mips2 -non shared -impopt -Nn16000 -Olimit2000 -O3 -sopt -s=3 - r=3 -o=5 -ur=5 -ur2=3000 -limit=10000 -arclimit=10000 -lo=CKLNS - chs=16 -w -G4800".

Insgesamt 18 verschiedene Optionen werden verwendet, die meisten davon mit einer Vielzahl von Einstellmoeglichkeiten. Doch damit nicht genug, verwendete der Hersteller fuer jeden der 20 Einzeltests andere Optionen.

Damit verlieren diese Tests aber jeden Bezug zur Realitaet. Viele Anwender haben weder die Zeit noch die Erfahrung, um alle Compiler-Optionen auseinanderzudividieren; sie verwenden nur den Parameter "-O", um ihre Programme zu optimieren. Zwar loeste sich das Problem von selbst, wenn der Test von der Spec-Organisation compiliert wuerde, doch dann koennte man nur noch die Leistung der Hardware messen; die Faehigkeiten eines Compilers wuerden nicht beruecksichtigt.

Damit bleibt das Problem der Compiler-Optionen auf der Tagesordnung und verschaerft sich sogar noch. In letzter Zeit sind Optionen in Mode gekommen, die in manchen Situationen das Programm zum Absturz bringen. Der Anwender gibt quasi dem Compiler die Zuegel frei fuer waghalsige Verbesserungen, bei denen die Software davon ausgeht, dass Zeiger niemals umgeleitet werden oder dass alle Daten immer mindestens 1 Byte gross sind. Zu dieser Gruppe zaehlen Optionen wie

"-mP20PT-disamb-types=true", "-qassert=typeptr", "- aligned-data-env" und "-qro".

Schlimmstenfalls fuehren diese Optionen sogar zu falschen Ergebnissen, ohne dass das Programm abstuerzt.

Der Missbrauch ist in den letzten Jahren ins Kraut geschossen, und inzwischen hat man sich anscheinend damit arrangiert. Es ist heute zu spaet, die Testserie Spec92 zu veraendern, um diese Machenschaften zu verhindern. Doch bei der Neuentwicklung Spec94 empfehlen sich einige Modifikationen: Nicht zugelassen werden sollten Optionen, die Datentypen veraendern oder ein Programm so verkuerzen, dass unter manchen Umstaenden Fehler auftreten.

Darueber hinaus sollten fuer alle Spec-Einzeltests die gleichen Optionen verwendet werden. So saehe jeder Anwender, welche Optionen die Leistung jedes Programms steigern. Die wahren Freaks haetten immer noch die Moeglichkeit, so lange mit den Optionen zu spielen, bis die maximale Leistung erreicht wird.

Der Spec-Test bleibt sicherlich ein nuetzliches Messinstrument, auch wenn die kritisierten Praktiken moeglich sind. John Mashey von der Spec-Organisation hat das Problem schon erkannt: Der Chef der Computerfirma Silicon Graphics vergleicht die Situation mit einem Automobiltest, bei dem ein Rennfahrer das Auto auf einer abgesperrten Strecke testet und Flugzeugbenzin verwendet.