Optimierte Benchmarks: SPEC erklärt über 2.500 Resultate mit Intel-CPUs für ungültig
Die Standard Performance Evaluation Corporation (SPEC), bekannt für ihre Benchmarks zur Leistungsbewertung von Prozessoren, hat laut Medienberichten mehr als 2.500 Ergebnisse mit Intel-CPUs für ungültig erklärt. Bei diesen soll ein speziell optimierter Compiler eingesetzt worden sein, damit die Prozessoren besser abschneiden.
Das berichtet Tom's Hardware und bezieht sich auf zuvor erschienene Artikel von Phoronix und Serve The Home, die einmal von mehr als 2.500 und einmal sogar von mehr als 2.600 betroffenen Benchmark-Ergebnissen für den SPEC CPU2017 Benchmark schreiben. Die Software wird hauptsächlich für den Leistungsvergleich von Server-Plattformen genutzt.
Beim Abruf eines dieser Ergebnisse erscheint jetzt der nachfolgend zitierte Hinweis der SPEC:
SPEC has ruled that the compiler used for this result was performing a compilation that specifically improves the performance of the 523.xalancbmk_r / 623.xalancbmk_s benchmarks using a priori knowledge of the SPEC code and dataset to perform a transformation that has narrow applicability.
In order to encourage optimizations that have wide applicability (see rule 1.4 https://www.spec.org/cpu2017/Docs/runrules.html#rule_1.4), SPEC will no longer publish results using this optimization.
This result is left in the SPEC results database for historical reference.
Demnach beanstandet das Unternehmen hinter den SPEC-Benchmarks, dass aufseiten des Compilers eine Optimierung zum Einsatz kam, „die gezielt die Leistung der Benchmarks 523.xalancbmk_r und 623.xalancbmk_s verbessert, indem er von vornherein Kenntnisse des SPEC-Codes und Datensatzes verwendet hat, um eine Transformation durchzuführen, die nur begrenzt“ und eben nicht allgemein anwendbar ist.
„Um Optimierungen mit breiter Anwendbarkeit zu fördern wird SPEC keine Ergebnisse mehr veröffentlichen, die diese Optimierung verwenden“, heißt es weiter. Die beanstandeten Ergebnisse sollen aber als „historische Referenz“ in den Datenbanken verbleiben.
Sapphire Rapids betroffen
Phoronix schreibt, dass die Intel-Compiler Intel oneAPI 2022.0 bis 2023.0 die besagte Optimierung genutzt haben. Ältere (vor 2022) sowie neuere (nach 2023) Resultate seien so nicht betroffen. Laut Serve The Home seien also vor allem Ergebnisse mit den Server-CPUs der Familie Sapphire Rapids alias Xeon der 4. Scalable Generation betroffen. Für die kommenden Intel Emerald Rapids sei wiederum die neuere Version 2023.2.3 ohne Optimierung relevant.
Auswirkungen durch die Optimierung
Wie Phoronix zwischenzeitlich erfuhr, ist davon auszugehen, dass die gezielte Optimierung die Resultate bei „SPECint speed“ um etwa 9 Prozent und bei „SPECint rate“ um rund 4 Prozent verbessert. Auch Serve The Home spricht von Verbesserungen im einstelligen Prozentbereich.
Da die Optimierungen bei der im Dezember veröffentlichten Version 2023.2.3 des Compilers schon wieder entfernt wurden, sei ein Beleg dafür, dass diese schon lange bekannt gewesen sein mussten. „Es kommt mir so vor, als ob etwas gefunden und diskutiert wurde, und dann sind alle weitergezogen. Das Ergebnis ist, dass wir jetzt nur noch Hinweise in über 2500 Ergebnissen finden“, schreibt Cliff Robinson für Serve The Home.