AMD präsentiert die Zen-Architektur

Artikel-Index:

Schon lange hat es Tradition, dass AMD parallel zur stattfindenden Konferenz des Mitbewerbers Intel die Redakteure in eigene Hotelhinterzimmer entführt, um dort eigene Werke zu zeigen. Dieses Jahr konnte AMDs CEO Lisa Su mit einem besonderen Bonbon aufwarten: Erstmals wurden lauffähige Systeme gezeigt, die auf AMDs nagelneuer Zen-Mikroarchitektur aufbauen. Anhand von Compilerinformationen konnten wir bereits letzten Oktober das Grunddesign veröffentlichen:

Architekturskizze nach AMDs Compilercode. Fehldarstellungen aufgrund von Copy-Paste-Fehlern im Code sind möglich!

Architekturskizze nach AMDs Compilercode, Stand Oktober 2015.

Dies erwies sich im Nachhinein als gute Interpretation der Informationen aus dem damals neuen Codesegment, wenn man es mit AMDs offiziellem Architekturschema vergleicht:

Je vier Integer- und FP-Einheiten mit jeweils zwei ADD/MUL-Units sowie zwei AGUs sind also gesichert, womit es sich bei Zen um ein relativ breites Design mit vielen Recheneinheiten handelt – sicherlich perfekt für den SMT-Einsatz.

Wir gehen im Folgenden kurz auf die Unterschiede im Vergleich zu Oktober ein:

- Zuallererst fällt der größere L1-Befehlscache auf. Sind sich AMD und Intel bei der Datencachegröße noch einig und verbauen 32 kB 8-fach assoziativen L1D-Cache, hat sich AMD beim Instruktionscache für 64 kB entschieden, wie es früher auch bei den K8- und K10-CPUs üblich war. Allerdings wuchs die Assoziativität von 2-fach auf 4-fach an, wurde also besser.

- Bei den Integerpipelines zeichnet AMD jeweils eigene Scheduler pro ALU/AGU ein, dies erinnert ebenfalls etwas an die K8- und K10-Vorläufer, verringert aber stark die maximale Tiefe der Out-of-Order-Ausführung. Allerdings ist zu vermuten, dass AMD dank nomineller 14-nm-Prozesstechnik jeden einzelnen Scheduler relativ großzügig dimensionieren kann, so dass sich etwaige Nachteile in Grenzen halten könnten. Die Angabe von 1,75-facher Größe im Vergleich zu Excavator hilft hier leider nicht weiter.

- Wichtigste Neuerung dürfte der von Intel mit Sandy-Bridge eingeführte µOp-Cache sein. Laut dem Schema scheint die Funktionalität ähnlich wie bei Intel zu sein, wo fertig dekodierte Befehle direkt an die Ausführungseinheiten geschickt werden können. Maximal können sechs µOps auf die Reise durch die Rechenwerke geschickt werden, d.h. genauso viele wie bei Intels aktueller Skylake-Architektur. Intel ermöglichte bis zur Haswell-Architektur nur vier µOps.

- Weitere Punkte wie z.B. eine Stack-Engine runden die Einzelheiten ab, dies wurde zuerst im Blog von Matthias Waldhauer erwähnt.

Abschließend noch eine Übersicht zur Cache-Hierarchie, welche ebenfalls den Erwartungen entspricht:

Was ist nun das Resultat aller Optimierungen? Eine zu Intels Broadwell-Architektur vergleichbare Pro-Takt-Leistung - zumindest bei Verwendung des Programms Blender.
Das ist sicherlich mehr als man erwarten durfte, auch wenn nicht genau klar ist, welche Befehle Blender einsetzt und welche nicht. Vermutlich werden keine 256-Bit-Befehle verwendet, dort hätte Intel nämlich noch einen starken Vorteil. Solange AMD die neuen Zen-Chips aber preislich attraktiv gestaltet, werden die Produkte sicherlich Zuspruch erfahren, schließlich ist AVX256-Code nur selten anzutreffen und als Ersatz stehen zwei statt einer ADD/MUL-Einheit zur Verfügung.

Vor der Präsentation ist bekanntlich nach der Präsentation und so wagte AMD auch schon einen Blick in die Zeit nach der ersten Zen-Iteration, für die weitere Steigerungen versprochen wurden:

Weitere Details zur Zen-Architektur werden nächsten Dienstag auf der Hotchips-Konferenz erwartet, worüber wir ebenfalls berichten werden.

» Alle Folien