# AMD Bulldozer

Bulldozer is de codenaam voor een microprocessor-microarchitectuur ontwikkeld door AMD voor desktop- en servermarkten. Bulldozer werd geïntroduceerd op 12 oktober 2011 als de opvolger van de K10-microarchitectuur.
Bulldozer is een nieuw ontwerp en niet een doorontwikkeling van een eerdere processor. De architectuur is gericht op producten met een TDP van 10 to 125 watt. AMD claimt sterk verbeterde prestaties per watt in high-performance computing-applicaties.
De Bulldozerprocessoren ondersteunen de meeste instructiesets die Intelprocessoren hadden bij de introductie (onder andere SSE4.1, SSE4.2, AES, CLMUL en AVX), net als nieuwe instructiesets van AMD: ABM, XOP, FMA4 en F16C.

## Overzicht

Op Bulldozer gebaseerde cpu's worden gefabriceerd volgens het 32nm-Silicon on insulator (SOI)-proces van GlobalFoundries en hergebruiken de aanpak van DEC voor multitaskingprestaties omdat AMD hoopte hiermee "overbodige" elementen van het ontwerp te omzeilen, waardoor er beter gebruik van de hardware kon gemaakt worden, met een lager stroomverbruik.
De eerste Bulldozer-gebaseerde chips arriveerden in oktober 2011 voor zowel servers als desktops. Voor de servermarkt waren er 16-core (2 chips) Opteron-processoren met de codenaam Interlagos (voor socket G34) en 4, 6 of 8 core (1 chip) Opterons met codenaam Valencia (Socket C32.) Voor desktops was er het Zambezi-ontwerp voor de FX-serie op socket AM3+.
Bulldozer is het eerste grote herontwerp van AMD's processorarchitectuur sinds 2003, toen het zijn K8-processoren lanceerde. Bulldozer heeft twee 128-bits-FPU's die gecombineerd kunnen worden tot een 256-bits-FPU. Dit ontwerp gaat gepaard met twee integer clusters, elk met 4 pipelines. Ook werd gedeeld L2 cache geïntroduceerd met de nieuwe architectuur. Dat alles is het ontwerp dat AMD een module noemt. Een 16-core-processor bestaat dus uit acht van deze modules, maar het OS herkent elke module als twee cores.
De modulaire architectuur bestaat uit een multithreaded en gedeelde L2-chache en FlexFPU, dat gelijktijdige multithreading ondersteunt. Elke fysieke core, twee per module, is single threaded, in contrast met Intels HyperThreading, waarbij twee virtuele threads dezelfde core delen.

## Architectuur
### Bulldozer-core

* AMD herintroduceerde de "Clustered Integer Core" microarchitectuur ontwikkeld door DEC in 1996 voor de Alpha 21264-microprocessor. Deze technologie wordt informeel ook wel CMT (Clustered Multi-Thread) genoemd, maar wordt door AMD een "module" genoemd. Een "module" is gelijk aan een dual-core-processor qua integer kracht en een single-core-processor qua zwevendekommagetal-rekenkracht: voor elke FPU zijn er twee integer clusters. De FPUs zijn gelijkaardig aan single-core-processoren die twee threads tegelijkertijd aankunnen met de kracht van één core.
* Elke "module" heeft de volgende resources:
** 2 MB aan L2 cache
** 16 KB L1 data-cache per core en 64 KB instructie-cache per "module"
** Twee integer clusters
** Twee symmetrische 128-bit FPUs
* Alle "modules" delen dezelfde L3 cache en geïntegreerde geheugencontroller
* Een "module" heeft 213 miljoen transistors op 30,9 mm²

### Instructiesets

* Ondersteuning voor Intels Advanced Vector Extensions (AVX) instructieset, die 256-bit zwevendekommaoperaties gebruikt, en SSE4.1, SSE4.2, AES, CLMUL, net als toekomstige 128-bit instructiesets voorgesteld door AMD (XOP, FMA4 en F16C), die dezelfde functionaliteit hebben als SSE5 maar met compatibiliteit met het AVX-programmeerschema.

### Procestechnologie en kloksnelheid

* 32nm-SOI-proces met 11 metaallagen en High-K Metal Gate-techniek.
* Turbo Core 2 verhoogt de kloksnelheid met maximaal 500 MHz als alle threads actief zijn en tot 1 GHz als de helft van de threads actief is, binnen de TDP limiet.
* De chips werken van 0,775 to 1,425 volt en halen daarbij kloksnelheden van 3,6 GHz of meer.
* De minimale TDP is 25 watt, de maximale is 140 watt

### Cache en geheugeninterface

* Tot 8 MB L3 cache, gedeeld onder alle cores die op dezelfde chip, onderverdeeld in 4 subcaches van 2 MB elk, welke werkt op 2,2 GHz op 1,125 volt
* DDR3-geheugenondersteuning tot DDR3-1866
* Dual channel DDR3 controller voor desktopprocessoren en de Opteron 42xx-serie serverprocessoren, quad channel controller voor Opteron 62xx-serie serverprocessoren
* Ondersteuning voor twee DIMM's van DDR3-1600-geheugen per kanaal. Twee DDR3-1866-DIMM's zullen onderklokt worden tot 1600 MHz.

### I/O en socket

* HyperTransport versie 3.1 (3,2 GHz, 6,4 GT/s, 25,6 GB/s en 16-bit link)
* Socket AM3+
** 942-pin, alleen DDR3-ondersteuning
** Terugwaartse compatibiliteit met socket AM3 (indien de moederbord-fabrikant dit kiest), maar dit is officieel niet ondersteund door AMD. AM3+-moederborden zijn wel altijd compatibel met AM3-processoren.
* Socket G34 en C32 voor de servermarkt

## Processoren

De eerste zending van op Bulldozer-gebaseerde Opteron-processoren werd aangekondigd op 7 september 2011. De processoren FX-4100, FX-6100, FX-8120 en FX-8150 werden uitgegeven in oktober 2011. De andere FX-serie-microprocessoren werden aan het einde van het eerste kwartaal van 2012 uitgegeven.
AMD plant twee op Bulldozer gebaseerde serverprocessoren: de Opteron-4200-serie (codenaam Valencia, tot 8 cores) en de Opteron-6200-serie (codenaam Interlagos, tot 16 cores).

## Prestaties
### Prestaties op Linux

Op 24 oktober 2011 toonde de eerste test, uitgevoerd door Phoronix, dat de prestaties van de Bulldozerprocessoren ietwat tegenvielen. In veel tests was de CPU slechts even snel als de oudere Phenom 1060T.
Later verbeterden de prestaties sterk doordat verschillende compilers optimalisaties doorvoerden en driverfixes werden toegepast.

### Prestaties op Windows

De eerste Bulldozer CPU's werden onthaald met gemengde respons. De FX-8150 presteerde slecht in benchmarks die niet geoptimaliseerd waren om veel threads te gebruiken, en achter de tweede generatie Intel Core i-serie-processoren te vallen en geëvenaard of zelfs achtergelaten te worden door AMD's eigen Phenom II X6 op lagere kloksnelheden. In sterk gethreade benchmarks presteerde de FX-8150 hetzelfde als een Phenom II X6, en een Intel Core i7-2600K, afhankelijk van de test. Gezien de over het algemeen consistente prestaties vergelijkbaar met de Intel Core i5-2500K aan een lagere prijs, waren veel recensenten niet onder de indruk van de resultaten. De processor verbruikte ook extreem veel stroom onder hoge belasting, zeker wanneer overklokt, vergeleken met Intel's Sandy Bridge.
Tom's Hardware verklaarde de lager dan verwachte prestaties door de manier waarop Windows de threads gebruikte. Als Windows eerst de vier verschillende modules zou beladen en dan pas de secundaire threads gebruiken zouden de prestaties gemaximaliseerd worden. Dit is gelijkaardig met wat Windows doet met Intel CPUs die HyperThreading ondersteunen; Windows 7 belast eerst de fysieke cores voordat het de HyperThreaded cores gebruikt.
Op 13 oktober 2011 stelde AMD dat sommigen in de gemeenschap vonden dat de prestaties ondermaats waren maar toonde daarbij benchmarks van echte applicaties waar het de Sandy Bridge i7 2600K en de Phenom II X6 1100T versloeg.
In januari van 2012 rolde Microsoft twee hotfixes uit voor Windows 7 en Windows Server 2008 R2 die de prestaties van Bulldozerprocessoren significant opschroefde door de fysieke modules eerst te beladen.
Op 6 maart 2012 plaatste AMD in een knowledge base artikel dat het wist van een compatibiliteitsprobleem tussen FX-processoren en bepaalde games op het populaire Steam-platform. AMD had een BIOS-update gedistribueerd aan verscheidene moederbord-fabrikanten (Asus, Gigabyte, MSI en ASRock) die het probleem zou oplossen.

### Overklokken

Op 31 augustus 2011 behaalden AMD en een groep van bekende overklokkers, waaronder Brian McLachlan, Sami Mäkinen, Aaron Schradin en Simon Solotko, een nieuw wereldrecord voor CPU-kloksnelheid met een onuitgegeven FX-8150 Bulldozerprocessor. Tot voordien stond het record op 8,309 GHz, maar de Bulldozer chip gecombineerd met vloeibare helium koeling behaalde 8,429 GHz. Het record is inmiddels gebroken door Andre Yang die 8,58 GHz haalde met vloeibaar stikstof.

## Herzieningen
### Tweede generatie (Piledriver)

Piledriver is de codenaam die AMD gaf aan de verbeterde microarchitectuur die gebaseerd is op Bulldozer. AMD Piledriver cores zijn verwerkt in Socket FM2 Trinity en Richland APUs en CPUs en de Socket AM3+ Vishera CPUs.

### Derde generatie (Steamroller)

Steamroller is de codenaam voor de verbeterde versie van Piledriver. Steamroller cores zijn verwerkt in Socket FM2+ Kaveri APUs en CPUs.

### Vierde generatie (Excavator)

Op 12 oktober 2011 maakte AMD bekend dat Excavator de codenaam wordt voor de vierde generatie Bulldozer cores. Excavator zal gebruikt worden in de vierde generatie A-serie APUs in 2015. De codenaam voor deze APUs is Carrizo.
* ↑ Artikel van TechPowerUp over de prestaties van de nieuwe microarchitectuur. (Engels). Gearchiveerd op 4 maart 2016.
* ↑ AMD64 Architecture Programmer's Manual Volume 6: 128-Bit and 256-Bit XOP, and FMA4 Instructions (Engels). Gearchiveerd op 13 augustus 2012.
* ↑ | Analyst Day 2009 Presentations (Engels)
* ↑ Bulldozer microarchitecture block. AnandTech (24 augustus 2010). Gearchiveerd op 29 juni 2021.
* ↑ Bulldozer module functional schematic. AMD (24 augustus 2010). Gearchiveerd op 24 december 2012.
* ↑ More On Bulldozer. Tomshardware.com (24 augustus 2010). Gearchiveerd op 28 december 2021. Geraadpleegd op 23 januari 2012.
* ↑ AMD Reveals Details About Bulldozer Microprocessors, AMD Reveals Details About Bulldozer Microprocessors. Xbitlabs.com. Gearchiveerd op 3 september 2011. Geraadpleegd op 23 januari 2012.
* ↑ Real World Technologies, AMD's Bulldozer Microarchitecture. Realworldtech.com (26 augustus 2010). Gearchiveerd op 4 februari 2012. Geraadpleegd op 23 januari 2012.
* ↑ AMD Financial Analyst Day 2010, Server Platforms Presentation. Ir.amd.com (9 november 2010). Gearchiveerd op 12 november 2013. Geraadpleegd op 23 januari 2012.
* ↑ AP (PDF). Gearchiveerd op 20 januari 2012. Geraadpleegd op 23 januari 2012.
* ↑ AMD Roadmap. Geraadpleegd op 23 januari 2012.
* ↑ AMD, AMD Opteron&TM; 4200 Series Processor Quick Reference Guide. www.amd.com (14 mei 2012). Gearchiveerd op 12 mei 2012. Geraadpleegd op 15 augustus 2012.
* ↑ AMD, AMD Opteron&TM; 6200 Series Processor Quick Reference Guide. www.amd.com (14 mei 2012). Gearchiveerd op 4 juli 2012. Geraadpleegd op 15 augustus 2012.
* ↑ ASUS confirms AM3+ compatibility on AM3 boards. Event.asus.com. Gearchiveerd op 29 december 2011. Geraadpleegd op 23 januari 2012.
* ↑ MSI confirms AM3+ compatibility on AM3 boards. Event.msi.com. Gearchiveerd op 16 januari 2012. Geraadpleegd op 23 januari 2012.
* ↑ AMD Ships First "Bulldozer" Processors. Gearchiveerd op 14 augustus 2020.
* ↑ AMD FX-8150 Bulldozer On Ubuntu Linux. phoronix.com (24 oktober 2011). Gearchiveerd op 6 oktober 2013. Geraadpleegd op 13 december 2012.
* ↑ AMD Bulldozer Cache Aliasing Issue Fix. phoronix.com.
* ↑ AMD's FX-8150 Bulldozer Benefits From New Compilers, Tuning. phoronix.com.
* ↑ Bulldozer Has Arrived: AMD FX-8150 Processor Review. X-bit labs (11 oktober 2011). Gearchiveerd op 1 april 2016. Geraadpleegd op 23 januari 2012.
* ↑ Tom's Hardware review. Tomshardware.com (12 oktober 2011). Gearchiveerd op 28 december 2021. Geraadpleegd op 23 januari 2012.
* ↑ Our Take on AMD FX. community.amd.com (14 november 2013). Gearchiveerd op 6 oktober 2014. Geraadpleegd op 23 januari 2012.
* ↑ An update is available for computers that have an AMD FX, AMD Opteron 4200, AMD Opteron 6200, or AMD Bulldozer series processor installed and that are running Windows 7 or Windows Server 2008 R2. support.microsoft.com (2012-01). Gearchiveerd op 22 februari 2014. Geraadpleegd op 11 februari 2014.
* ↑ An update that selectively disables the Core Parking feature in Windows 7 or in Windows Server 2008 R2 is available. support.microsoft.com (2012-01). Gearchiveerd op 22 februari 2014. Geraadpleegd op 11 februari 2014.
* ↑ STEAM Games on AMD FX platforms. support.amd.com (12 juni 2012). Gearchiveerd op 16 oktober 2012. Geraadpleegd op 11 oktober 2012.
* ↑ AMD Bulldozer CPU beats world record again achieving 8.461GHz. geek.com (1 november 2011). Gearchiveerd op 28 april 2012. Geraadpleegd op 16 oktober 2012.
* ↑ AMD Bulldozer Speed Record Broken Again at 8.58GHz. Gearchiveerd op 28 december 2021.
* ↑ New confirmed details on AMD's 2014 APU lineup, Kaveri delayed - VR-Zone. Gearchiveerd op 27 juni 2016.