c't 19/2017
S. 98
Test
Benchmarks
Aufmacherbild

Der neue Maßstab

Die Benchmark-Suite SPEC CPU2017 auf Intel Xeon und AMD Epyc

Elf Jahre hat es gedauert und alle wesentlichen Firmen der Szene haben daran mitgearbeitet – vielleicht hat es ja genau deshalb so lange gedauert … Aber nun ist sie fertig, die neue Benchmarksuite SPEC CPU2017. Wir haben zum Einstieg unsere bewährte Viererbande aus aktuellen Xeons und AMDs Epyc mit GNU- und Intel-Compilern auf sie losgelassen.

Sie soll mindestens die nächsten sechs, wenn nicht gar zehn Jahre das Maß der Dinge sein, wenn es um die Bewertung von Einzel- und SMP-Systemen (Symmetrisches Multiprocessing) geht: die Benchmarksuite SPEC CPU2017. Sie ist dort zu Hause, wo primär das Zusammenspiel von CPU(s), Speicher und Compiler bewertet werden soll – also ohne Berücksichtigung von I/O. Die Suite soll quelloffen sein, damit man genau weiß, was sie tut und damit sie immer mit den neusten Compilern auf aktuellem Stand gehalten werden kann. Sie soll mit vielen echten Applikationen arbeiten, die unterschiedliche Anforderungen haben. Sie soll auf möglichst vielen Plattformen laufen, sei es auf x86, Power, Sparc oder ARM64, sei es mit einer CPU oder mit 1024. Sie soll für einzelne Applikationen (Speed) und für viele parallellaufende (Rate) Messwerte liefern. Sie soll Teilsuiten getrennt nach Ganzzahl- (int) oder Gleitkomma-Arithmetik (fp) anbieten. Sie soll zudem vernünftig große Workloads für typische derzeitige Speichergrößen sowie lange Laufzeiten besitzen, sodass bei drei Durchläufen die Streuung möglichst gering ist. Sie muss ferner klare Regeln für die Verwendung von Compiler-Flags (Base oder Peak), für den Ablauf des Benchmarks und für die Veröffentlichung haben.

Benchmarks, die all diese Kriterien erfüllen, gibt es nur sehr wenige. Die Vorgängersuite SPEC CPU2006 hat diese Herkules-Aufgabe geschafft und sie ist mit über 44.000 Einreichungen wohl der bedeutendste Performance-Maßstab in dieser Szene geworden – nicht nur im Serverbereich, sondern darüber hinaus. Im Laufe der Zeit gelang es jedoch, mit ausgefeilten Compilertricks den einen oder anderen Benchmark (insbesondere die Quantencomputer-Simulation libquantum) um viele Größenordnungen zu beschleunigen, sodass die Aussagekraft der Suite zum Ende hin immer geringer wurde.