AMD Bulldozer

Bulldozer ist eine von AMD entwickelte Mikroarchitektur für x86-Prozessoren mit 64-Bit-Erweiterung und Nachfolger von AMD K10. Erste Prozessor-Modelle auf Bulldozer-Basis wurden unter dem Markennamen AMD FX im Oktober 2011 vorgestellt. Das wichtigste Architekturmerkmal ist das sogenannte „Core Multithreading“ (CMT), einige Elemente wurden aber auch aus der AMD-K10-Architektur übernommen.[1] Die Bulldozer-Architektur inklusive der Optimierung Piledriver wurde von der Steamroller-Architektur abgelöst.

Architekturmerkmale

Blockdiagramm eines Bulldozer-Moduls

Der komplett neu entwickelte Bulldozer war AMDs größte Mikroarchitekturveränderung seit der Einführung von AMD64 im Jahre 2003. Bulldozer basiert im Unterschied zu AMD K10 auf Modulen. Ein Modul hat zwei 128-Bit-Gleitkommaeinheiten (FPUs), die bei Bedarf zu einer 256-Bit-breiten Gleitkommaeinheit kombiniert werden können. Der FPU stehen pro Modul zwei Integercluster mit je zwei ALUs und zwei AGUs („adress generation units“) zur Seite. Pro Modul gibt es einen von allen Einheiten des Moduls geteilten L2 Cache. Betriebssysteme erkennen ein Modul als zwei logische Prozessorkerne. Ein Bulldozer-Die beherbergt maximal vier Module. Damit können maximal acht Threads gleichzeitig abgearbeitet werden. Der größte Bulldozer-Ableger (Interlagos) setzt sich aus zwei Siliziumplättchen zusammen und kommt mit seinen 16 Threads nicht ganz an den zu der Zeit größten Intel Xeon (Haswell-EP) heran, der mit max. 18 Kernen und Hyper-Threading auf 36 Threads kommt.[2][3][4][5]

Modul

Die von AMD bei Bulldozer eingeführte Clustered-Integer-Core-Architektur wurde ursprünglich von DEC entwickelt und erstmals 1996 mit der RISC-CPU Alpha 21264 vorgestellt.

Das Modul ist ein Kompromiss zwischen echtem Dualcore, wo jedem Thread alle Funktionseinheiten des Prozessorkerns zur Verfügung stehen, und einem Singlecore mit Simultaneous Multithreading (SMT). Das Konzept spart Fläche im Vergleich zum gewöhnlichen Dualcore. Ein Modul ist in verschiedene einfach und doppelt vorhandene Einheiten aufgeteilt, die sich zudem manche Ressourcen teilen. Es hat zwei Integer-Einheiten (Ganzzahl) und eine 256-Bit-Floatingpoint-(Gleitkommazahl)-Einheit, die bei Bedarf in zwei 128-Bit-FPUs aufgeteilt werden kann. Die Fetch-und-Decode-Einheit sind ebenfalls nur einfach vorhanden und teilen die Last auf die jeweiligen Einheiten auf. Ein Modul verfügt über einen 2-MB-Shared-L2-Cache, einen 16-kB-4-Wege-L1-Datacache pro Integercluster und einen 64-kB-2-Wege-L1-Instructionscache. Die beiden unabhängigen Integercluster sind jeweils mit zwei ALUs und zwei AGUs ausgestattet, was maximal vier Arithmetik- und Speicheroperationen pro Modul und Takt erlaubt.[6] Jedes Modul besitzt zwei symmetrische 128-Bit-FMAC-Gleitkommapipelines, die bei Bedarf in eine 256-Bit-breite Einheit umfunktioniert und damit für einen FMA-Befehl verwendet werden können. FMA rundet anders als der Multiply-Add-Befehl erst nach Ende der kompletten Berechnung das Ergebnis. Alle Module einer CPU teilen sich den ggf. vorhandenen L3-Cache sowie das Dual-Channel Interface.

Befehlssatzerweiterungen

AMD unterstützt mit der Bulldozer-Mikroarchitektur diverse Instruktionen wie Intels AVX („Advanced Vector Extensions“), SSE4.1, SSE4.2, AES, CLMUL, als auch von AMD entwickelte Instruktionen (XOP, FMA4). Das von AMD entwickelte 3DNow! fällt mit dieser Generation erstmals weg.[7]

Implementierung

AMD Bulldozer block diagram (8 core CPU)

Mikroprozessoren auf Bulldozer-Basis wurden 2011 von AMD zunächst nur in der „Enthusiasten“-Serie (als AMD FX) und im Serverbereich (als AMD Opteron) in den Markt eingeführt. Für die Verwendung in Servern werden sowohl CPUs mit zwei Dies unter einem Integrated Heatspreader (IHS) mit dem Codenamen Interlagos (bis zu 16 Threads) auf dem Sockel G34 vertrieben, als auch CPUs mit einem Die unter dem IHS mit dem Codenamen Valencia (4 bis 8 Threads) auf dem Sockel C32. Diese sind, anders als bei den Consumer-Versionen, als LGA-CPUs konzipiert. Alle bisherigen CPUs auf Bulldozer-Basis, einschließlich der aktuellen Piledriver-Revision, werden bei GlobalFoundries im 32-Nanometer-SOI-HKMG-Verfahren gefertigt. Ein Modul des Orochi-Dies, das die Basis für CPUs der Typen Zambezi (FX-Serie) und Valencia (Opteron-Serie) bildet, beinhaltet auf einer Fläche von 30,9 mm² ca. 213 Millionen Transistoren.

Piledriver

Piledriver heißt die erste Überarbeitung von AMDs Umsetzung der Clustered-Integer-Core-Architektur. Sie wurde im Jahr 2012 vorgestellt und sollte in allen Anwendungsbereichen Einzug halten: im Server-Segment weiterhin als Opteron, im APU-Segment unter dem Codenamen Trinity sowie als Ersatz für die erste Generation der FX-CPUs.

Neben Verbesserungen bei der Sprungvorhersage und der Auslastung der Pipelines wurden folgende Neuerungen eingeführt:[8]

  • Unterstützung von FMA3, welches von Intel erst mit der Haswell-Architektur eingeführt wurde
  • Instruktionen zur Bit(masken)manipulation: BMI1 (Intel-kompatibel) und TBM (AMD-spezifisch)
  • Unterstützung für Gleitkommazahlen halber Genauigkeit: F16C
  • Überarbeiteter und schnellerer L2-Cache
  • Neue Clock-Mesh (nur bei Trinity-Version)
  • Doppelt so großer Level 1 TLB für Daten (64 statt 32 Einträge)

Neben Trinity basiert auch das 2013 vorgestellte Prozessor-Stepping Richland auf Piledriver-CPU-Kernen.

  • Bulldozer-Architektur unter der Lupe: Schwachstellen identifiziert. In: Planet 3DNow!
  • The Bulldozer Aftermath: Delving Even Deeper. In: AnandTech

Einzelnachweise

  1. Originals vom 14. Oktober 2011 im Internet Archive)  Info: Der Archivlink wurde automatisch eingesetzt und noch nicht geprüft. Bitte prüfe Original- und Archivlink gemäß Anleitung und entferne dann diesen Hinweis.@1@2Vorlage:Webachiv/IABot/ht4u.net In: ht4u.net
  2. AMD zeigt Interlagos-Prozessoren mit 16 Kernen (Memento vom 29. August 2014 im Internet Archive), tomshardware.de, 28. Juni 2011
  3. AMD Opteron™ Processor Solutions (Memento vom 20. Oktober 2014 im Internet Archive), products.amd.com
  4. Benjamin Benz: Xeon-Prozessor mit 18 Kernen. In: heise online. 20. Juni 2014, abgerufen am 7. Juni 2021. 
  5. Intel® Xeon® Processor E5-2699 v3 (45M Cache, 2.30 GHz) Product Specifications. Abgerufen am 7. Juni 2021. 
  6. Volker Rißka: AMD Bulldozer im Test: Ein schwarzer Mittwoch (Seite 8). In: ComputerBase. Abgerufen am 7. Juni 2021. 
  7. Volker Rißka: AMD Bulldozer im Test: Ein schwarzer Mittwoch (Seite 9). In: ComputerBase. Abgerufen am 7. Juni 2021. 
  8. Don Woligroski: AMD A10-4600M Review: Mobile Trinity Gets Tested. In: Tom’s Hardware. 15. Mai 2012, abgerufen am 7. Juni 2021 (Abschnitt The CPU Side: An All-New Piledriver Core). 
Mikroarchitekturen

Am29000 • Am286 • Am386 • Am486 • 5x86 • K5 • K6 • K6-2 • K6-III • K7 • K8/K8L • K9 • K10 • Bobcat • Bulldozer • Jaguar • Steamroller • Puma • Zen/Zen+ • Zen 2 • Zen 3/Zen 3+ • Zen 4

Technologien

AMD64 • AMD-V • HSA • Mantle • live! • Quad FX • QuantiSpeed • Turbo Core

Ryzen
Server

Epyc 7001 „Naples“ • Epyc 7002 „Rome“ • Epyc 7003 „Milan“ • Epyc 9004 „Genoa“/„Bergamo“/„Siena“

Desktop

Ryzen 1000 „Summit Ridge“/2000 „Pinnacle Ridge“ • Ryzen 3000 „Matisse“ • Ryzen 5000 „Vermeer“ • Ryzen 7000 „Raphael“

Workstation/HEDT

Threadripper 1000 „Whitehaven“/2000 „Colfax“ • Threadripper 3000 „Castle Peak“ • Threadripper 5000 „Chagall“ • Threadripper 7000 „Storm Peak“

Mobil

Ryzen 2000 „Raven Ridge“/3000 „Picasso“ • Ryzen 4000 „Renoir“ • Ryzen 5000 „Lucienne“ • Ryzen 5000 „Cezanne“ • Ryzen 6000 „Rembrandt“ • Ryzen 7040 „Phoenix“/Ryzen 7045 „Dragon Range“

Embedded

Ryzen V1000 „Snowy Owl“/V1000B „Great Horned Owl“ • Ryzen Embedded V2000/R2000 • Ryzen Embedded V3000 • Ryzen Embedded 5000

Fusion APUs
Desktop
auch in Notebooks

Llano (K10) • Trinity, Richland (Piledriver) • Kaveri (Steamroller) • Carrizo, Bristol Ridge (Excavator)

Mobil
Subnotes, Tablets

Ontario, Zacate (Bobcat) • Kabini, Temash (Jaguar) • Beema, Mullins (Puma)

Embedded

Ontario G-Serie

Opteron
Server

Opteron (K8) • Opteron (K9) • Opteron (K10) • Opteron (Bulldozer) • Opteron (Piledriver)

Phenom
Desktop

Phenom • Phenom II

Mobil

Phenom II

Athlon
Desktop

Athlon (K7) • Athlon XP • Athlon 64 (FX) • Athlon 64 X2 • Athlon X2 • Athlon II

Mobil

Athlon XP-M • Mobile Athlon 64 • Athlon 64 X2 • Athlon X2 • Athlon II

Server

Athlon MP

Turion
Sempron
Desktop

Sempron (K7) • Sempron (K8)

Mobil

Mobile Sempron

Duron
Desktop

Duron

Mobil

Mobile Duron

Geode
Embedded

GX • LX • NX • NX 2001

Alchemy
Embedded

Alchemy

Chipsätze

690-Serie • 700-Serie • 800-Serie • 900-Serie • AM4-Chipsätze • STRX4-Chipsätze

AMD FX • Liste der AMD-K10-Prozessoren (Desktop)