Zen 2 — AMD Ryzen 7 3700X und Ryzen 9 3900X im Test
AMD Ryzen 3700X Mikroarchitekturbenches
Für weitere Tests verwendeten wir die Software RMMA in der Version 3.8. Dort können verschiedene Mikroarchitekturbenchmarks ausgewählt werden, mit denen man die Auswirkungen von AMDs Architekturänderungen überprüfen kann. Alle Benches wurden bei 4.0 Ghz und deaktivierten Stromsparmechanismen durchgeführt, um etwaige Abweichungen so gering wie möglich zu halten.
Zuerst verwenden wir einen normalen Cache-Zugriffsbench mit zufälligem Zugriffsmuster (random), um die obigen CPU-Z-Werte zu verifizieren:
Erfahrungsgemäß schneiden Tests mit Zufallszugriffsmuster schlechter ab, als die CPU-Z-Tests, dennoch zeigen sich keine großen Abweichungen. L1-Daten stehen nach 4 Takten zur Verfügung, L2-Daten nach ca. 12 Takten und der L3 schafft es um die 40 Takte. Auffallend ist, dass die alte Zen-Architektur etwas besser abschneidet. Ob dies an der Architektur selbst, oder an unreifen BIOS-Versionen liegt, müssen zukünftige Tests klären.
Um die Halbierung des L1I-Caches zu verifizieren führten wir auch die Tests für den Instruktionscache durch. Den Unterschied sieht man deutlich im Pseudo-Random Zugriff:
Daran sieht man auch den Grund für AMDs Entscheidung, den I‑Cache zu verkleinern. Die Prefetchautomatik ist auch bei Pseudo-Randomzugriffen gut genug, um die Latenz im Speicherbereich über 32 kiByte auf dem Niveau des alten Designs mit 64 kiByte zu halten. Mehr noch — es kann sogar bis ca. 300 kiByte gehalten werden. Im L3-Bereich und im RAM-Speicherbereich zeigen sich wieder die bereits oben genannten Nachteile der neuen Generation gegenüber der Vorgängerversion.
Interessant wird es nun natürlich, ob man die µCode-Cache-Änderung visualisieren könnte. Diese zeigen sich in der Tat in den Decoding-Subbenchmarks. Dazu testeten wir die Dekodierung von Compare (CMP) Instruktionen, jeweils mit und ohne Präfixe:
Bei beiden sieht man anfangs eine starke Dekodierleistung zwischen 20 und 25 Byte/Takt. Die Vorgängergeneration zeigt dabei einen früheren Einbruch der Dekodierrate bei ca. 6 kiB, der neue Zen 2 kann die höhere Rate dagegen bis ca. 12 kiB halten. Diese ist etwas geringer — möglicherweise musste die Zugriffszeit aufgrund der Größenänderung leicht verschlechtert werden. Im L3- und RAM-Bereich zeigen sich wieder die genannten Schwächen der aktuellen Testkonfiguration.
Als kleines Zwischenfazit lässt sich feststellen, dass die Verkleinerung des L1-Instruktions-Caches nicht groß ins Gewicht fallen dürfte. Der vergrößerte µOp-Cache zeigt seine Vorteile und egalisiert die Nachteile, außerdem wurde die L2-Anbindung — genauer: deren Prefetch — verbessert. Schade nur, dass AMD im Gegenzug nicht den L1-Datencache auf 64 kIB vergrößerte. Etwas merkwürdig sind die Leistungsnachteile des neuen Designs im L3-Bereich. Einerseits wäre es normal, dass ein doppelt so großer Cache die Daten etwas langsamer liefern kann, andererseits sollte der Herstellungsprozess-Vorteil von 7 nm diesen Nachteil aber wieder auffangen können. Frühe BIOS-Versionen mit konservativen Timings sind als Grund für das etwas schlechtere Abschneiden ebenfalls ein möglicher Grund. In der Realität dürften aber in jedem Fall die Vorteile durch den doppelt so großen L3-Cache überwiegen.