Details und Analyse der Zen-Architektur nach der Hot-Chips-Konferenz
Bessere Kernarchitektur
Als erstes fällt auf, dass AMD überall mehr investiert. Neben neuen Kernelementen wie dem energiesparenden Stack-Cache oder dem µOp-Cache gibt es zahlreiche bekannte Rechenwerke (8 an der Zahl plus 2 Adressgenerierungseinheiten), zu denen sich besonders tiefe Puffer gesellen:
- Instruktionsscheduler:
- Integer: 84 (48 bei Bulldozer: “BD”)
- FP: 96 (60 bei BD)
- größere Retire-Bandbreite: 8 µOps pro Takt anstatt 4 µOps (BD)
- größere Retire-Puffer: 192 statt 128 Einträge (BD)
- größerer Ladepuffer: 72 statt 44 Einträge (BD)
- größerer Speicherpuffer: 44 statt 32 Einträge (BD)
Die Zählweise bei den Integerschedulern ist etwas optimistisch. Genaueres folgt in der Detailbetrachtung des Integer-Rechenwerkes.
Auffallend ist die Erweiterung der Retire-Möglichkeiten, deren Umfang gleich verdoppelt wurde. In diesem letzten Schritt werden alle ausgeführten Befehle gesammelt, wieder in die richtige Befehlsreihenfolge gebracht und abgeschlossen. Alle Kniffe wie die Ausführung außerhalb der Befehlsreihenfolge (Out-of-Order-Execution alias OoO) werden also rückgängig gemacht. AMD gibt an, dass Bulldozer hier einen Flaschenhals aufwies. Vier Befehle pro Takt waren zu wenig, da in diesem finalen Schritt nicht nur OoO, sondern auch Tricks wie Macro-Op-Fusion oder Move-Elimination rückgängig gemacht werden müssen. Bei Zen gibt es jetzt 8 Retirement-Möglichkeiten pro Takt, diese dürften in jedem Fall – auch noch für 2 Threads – ausreichend sein.
Zweiter Punkt in AMDs Übersicht ist das Cachesystem, welches wir auf den nächsten Seiten vorstellen möchten.