A Bulldozer egy az AMD által kifejlesztett, asztali és szerver-piacra szánt processzor-mikroarchitektúra. 2011. október 12-én bocsátották ki, az AMD K10 mikroarchitektúrájának utódja.
A Bulldozer architektúra teljesen új tervezés, nem egy korábbi processzor továbbfejlesztése. A mag az alapvető, 10–125 watt közötti TDP-jű számítástechnikai termékekben való felhasználást célozza. Az AMD a Bulldozer magok alkalmazásával drámai (egy wattra eső) teljesítménynövekedést ígér a nagyteljesítményű számítástechnikai (HPC) alkalmazások terén.
A Bulldozer magok támogatják a megjelenésük idejében az Intel processzorok által implementált legtöbb utasításkészletet (beleértve az SSE4.1, SSE4.2, AES, CLMUL, és AVX kiterjesztéseket), valamint az AMD által javasolt új ABM, XOP, FMA4 és F16C utasításkészleteket. Áttekintés Az AMD szerint a Bulldozer-alapú CPU-k alapvetően a GlobalFoundries -es szilícium szigetelőn (silicon on insulator, SOI) gyártási technológiáján alapulnak, és a magokban újra felhasználják a DEC megközelítését a többfeladatos számítógépek teljesítményének növelésére, amelyben a megjelent hírek szerint „a dedikált és elosztott számítógépes erőforrások arányát kiegyensúlyozva nagyon tömör, nagy alkatrésszámú egységeket alakítanak ki / sokszorosítanak a szilíciumcsipen, a teljesítmény skálázása érdekében.” Más szavakkal, elhagytak néhány redundáns elemet, amelyek szinte természetes módon bukkannak fel a többmagos kialakításokban, és ettől az AMD egyszerre a teljesítmény javulását és a fogyasztás csökkenését várta.
A 2011 októberében megjelentek az első Bulldozer-típusú megvalósítások; ezek a GlobalFoundries drezdai üzemében készültek, 32nm-es SOI technológiával, amelyet HKMG (High-K Metal Gate, magas k együtthatós fémkapu tranzisztor) technológiával ötvöztek. A Bulldozer-magos processzorok mind a szerverekben, mind az asztali gépekben történő felhasználást célozták.
A szerver-szegmensben található a kétcsipes (16 magos) Interlagos kódnevű Opteron processzor (Socket G34 foglalathoz) és az egycsipes (4, 6 vagy 8 magos) Valencia (Socket C32-höz), míg a Zambezi (4, 6 és 8 magos) az asztali gépeket célozta Socket AM3+ foglalattal.
A Bulldozer az AMD processzorarchitektúra első jelentős átalakítása 2003, a K8 processzorok indulása óta. Egyik legfontosabb jellemzője, hogy tartalmaz két 128 bites FMA-képes lebegőpontos egységet, amelyek egyetlen 256 bites FPU-vá egyesíthetők. Ezt a kialakítást két fixpontos (integer) klaszter kíséri, mindegyik négy futószalaggal rendelkezik, melyekben az utasításlehívás/dekódolás fázisok közösek. A Bulldozerben egy osztott L2 gyorsítótárat is bevezettek az új architektúrába. Az AMD ezt a kialakítást „modul”-nak hívja. Egy 16 magos processzorkialakítás nyolc ilyen „modult” tartalmazna, de az operációs rendszer minden „modult” két logikai magnak érzékel.
A moduláris architektúra tartalmaz egy többszálú megosztott L2 gyorsítótárat és egy FlexFPU egységet (flexibilis FPU, két integer mag közösen használja), amely szimultán többszálas végrehajtású. A fizikai fixpontos (integer) magok, modulonként kettő, egyszálas végrehajtásúak, ellentétben az Intel Hyper-threading rendszerével, ahol két szimultán virtuális szál osztozik az egyetlen fizikai mag erőforrásain.
Architektúra
A Bulldozer mag thumb|right|300px|Egy teljes Bulldozer modul blokkvázlata, a 2 egész (integer) klaszterrel thumb|right|300px|Négymodulos kialakítás blokkvázlata, 8 egész (integer) klaszterrel thumb|right|300px|Bulldozer-alapú szerver memóriatopológiája Az AMD újra bevezette a „Clustered Integer Core” mikroarchitektúrát, amit eredetileg a DEC fejlesztett ki 1996-ban, az Alpha 21264 RISC mikroprocesszorhoz. Ez a technológia informálisan CMT (Clustered Multi-Thread) néven ismert, az AMD formálisan „modul”-nak nevezi. Hardveres szemszögből egy „modul” egy kétmagos processzornak felel meg fixpontos teljesítményét tekintve, és egymagos processzornak a lebegőpontos teljesítmény alapján: mindegyik két fixpontos maghoz egy lebegőpontos mag tartozik. A lebegőpontos mag egy egymagos processzorhoz hasonlít, amely rendelkezik a SMT képességével, ezáltal egy olyan kétszálas processzort alkot, amely egy processzor teljesítményét nyújtja (minden szál közösen használja a modul erőforrásait) a lebegőpontos számításokban. Egy „modult” két összekapcsolt, nem sorrendi végrehajtású (out-of-order) „hagyományos” x86 mag alkot. A feldolgozó mag megosztja a korai futószalag-állapotokat (pl. L1 utasítás-gyorsítótár, lehívás, dekódolás), az FPU-kat és az L2 gyorsítótárat a „modul” többi részével. Minden „modul” tartalmazza a következő független hardvererőforrásokat: 2 MiB L2 gyorsítótár modulonként (a mag két fixpontos klasztere közösen használja) 16 KiB 4 utas L1 adat-gyorsítótárat (útjóslással, way-predicted) klaszterenként és 2 utas 64 KiB L1 adat-gyorsítótárat magonként, egy úttal mindkét klaszterhez Két dedikált fixpontos (integer) klaszter– mindegyikben két ALU és két címszámító egység (address generation unit, AGU) található, amelyek összességében négy független aritmetikai és memóriaműveletet képesek végrehajtani egy órajelciklus alatt, klaszterenként– a fixpontos ütemezők és végrehajtási futószalagok megduplázása dedikált hardveren biztosítja mindkét szál végrehajtását, ami növeli a teljesítményt bizonyos többszálú fixpontos számítások esetén – a második fixpontos klaszter körülbelül 12%-kal növeli a Bulldozer mag lapkaterületét, amely a teljes csip szintjén kb. 5%-os területnövekedést jelent. Két szimmetrikus 128 bites FMAC (összeolvasztott szorzás-összeadás végrehajtására képes) lebegőpontos futószalag modulonként, amelyek egy nagy 256 bit széles egységgé egyesíthetők (ha az egyik fixpontos mag kiadja az AVX utasítást), és két szimmetrikus x87/MMX/SSE kompatibilis lebegőpontos processzor a nem SSE2-re optimalizált szoftverek visszafelé kompatibilitásának fenntartásához Minden modulban megtalálható egy megosztás a közös L3 gyorsítótárhoz és egy Advanced Dual-Channel Memory Sub-System (fejlett kétcsatornás memória-alrendszer, IMC - Integrated Memory Controller, integrált memóriavezérlő) Egy „modul” 213 millió tranzisztort tartalmaz felületen, beleértve a 2 MiB megosztott L2 gyorsítótárat is, egy Orochi lapkán. Utasításkészlet-kiterjesztések Az Intel Advanced Vector Extensions (AVX) utasításkészletének támogatása, amely támogatja a 256 bites lebegőpontos műveleteket, az SSE4.1, SSE4.2, AES, CLMUL kiterjesztéseket, valamint az AMD által javasolt, jövőbeli (XOP, FMA4 és F16C) 128 bites utasításkészleteket, amelyek ugyanazzal a funkcionalitással rendelkeznek, mint a korábban szintén az AMD által javasolt SSE5 utasításkészlet, csak ezek kompatibilisak az AVX (utasítás)kódolási rendszerrel. Folyamat-technológia és órajelfrekvencia A lapka 11 fémréteget tartalmaz, 32 nm-es SOI (szilícum szigetelőn) folyamattal készül, a GlobalFoundries első generációs High-K Metal Gate (HKMG, magas k együtthatós fémkapu tranzisztor) technológiájával kiegészítve Turbo Core 2 teljesítménynövelő technológia: a terhelés függvényében ha az összes szál aktív, akkor az órajelfrekvenciát max. -cel növeli, ha a szálak fele aktív, akkor a frekvenciát max. -cel növeli az automatika, a TDP keretein belül. Ha egy alkalmazás a rendelkezésre álló processzormagok nagy részét, de nem az összeset, használja, a 'Max Turbo' (üzemmód) megnöveli a használatban lévő magok órajelét. Ha az alkalmazás az összes magot használja, a 'Core Turbo' (üzemmód) mindegyiket felturbózza – nem annyira, mint amikor csak néhány mag van kihasználva, de kihasználja az összes rendelkezésre álló túlvezérlési tartományt. in: A csip 0,775 és 1,425 V közötti feszültségen működik, órajele 3,6 GHz vagy magasabb lehet Minimum-maximum TDP: 25 – 140 wattA processzoroknak vannak a melegedési és teljesítménybeli határértékei, amelyeket túllépve a processzor működésének stabilitása veszélybe kerül. Ezeket a határértékeket hívják az adott processzor thermal design power vagy TDP értékének. (PCWorld, 'Lab tested: ...' cikk) Gyorsítótár és memória-interfész Az L3 gyorsítótárat az ugyanazon a lapkán lévő összes mag közösen használja, mérete 8 MiB 4 mag esetén az asztali gépekbe szánt csipekben, 16 MiB 8 mag esetén a szerverekbe szánt csipekben; a 8 MiB-os gyorsítótár négy 2 MiB méretű részre van osztva, 2,2 GHz órajelen működik 1,1125 V feszültségen Natív DDR3 memória támogatás, max. DDR3-1866 (MT/s) Dual Channel DDR3 integrált memóriavezérlő az asztali és szerver/munkaállomás Opteron 42xx „Valencia” processzorokban; Quad Channel DDR3 integrált memóriavezérlő a szerver/munkaállomás Opteron 62xx „Interlagos” processzorokban. Az AMD állítása szerint a kialakítás két DDR3-1600 DIMM-et támogat csatornánként. Két DDR3-1866 DIMM esetén egyetlen csatornán az órajel lecsökken 1600-ra. Be-/kimeneti és processzorfoglalat-interfész HyperTransport technológia rev. 3.1 (3,20 GHz, 6.4 GT/s, 25,6 GB/s & 16 bit széles kapcsolat) – először a „Magny-Cours” HY-D1 revíziójában valósították meg Socket G34 Opteron platformon, 2010 márciusában és a „Lisbon” processzorokban Socket C32 Opteron platformon, 2010 júniusában Socket AM3+ (AM3r2)'''' csak 942 tűs DDR3 támogatása Megőrzi a visszafelé kompatibilitást a Socket AM3 alaplapokkal (amennyiben az alaplap gyártója úgy dönt és BIOS frissítések is készülnek ), bár ezt az AMD hivatalosan nem támogatja; az AM3+ alaplapok visszafelé kompatibilisak maradnak az AM3 processzorokkal. A szerverprocesszorok körében a létező socket G34 (LGA1974) és socket C32 (LGA1207) marad használatban.
Processzorok
thumb|right|250px|Csipkészlet és be-/kimenet az első CMT generációhoz A Bulldozer-alapú Opteron processzorok első kereskedelmi szállításait 2011. szeptember 7-én jelentették be. Az FX-4100, FX-6100, FX-8120 és FX-8150 2011 októberében jelent meg; a többi FX sorozatú AMD processzor 2012 első negyedévében volt kibocsátva. Asztali modell modulok(magok) órajel Max. turbo L2 gyorsítótár L3 gyorsítótár TDP memória Turbo Core foglalat teljes terhelés fél terhelés FX-8150 4 (8) 3,6 GHz 3,9 GHz 4,2 GHz 4 × 2 MiB 8 MiB 125 W DDR31866 MHz van (2.0) AM3+ FX-8120 3,1 GHz 3,4 GHz 4,0 GHz FX-8100 2,8 GHz 3,1 GHz 3,7 GHz 95 W FX-6200 3 (6) 3,8 GHz 4,0 GHz 4,1 GHz 3 × 2 MiB 125 W FX-6120 3,5 GHz 3,9 GHz 4,1 GHz 95 W FX-6100 3,3 GHz 3,6 GHz 3,9 GHz FX-4170 2 (4) 4,2 GHz 4,3 GHz 4,3 GHz 2 x 2 MiB 125 W FX-4130 3,8 GHz 3,9 GHz 4,0 GHz 4 MiB FX-4100 3,6 GHz 3,7 GHz 3,8 GHz 8 MiB 95 W Főbb források: CPU-World és Xbit-Labs
A szerverek számára Bulldozer-alapú processzorokból két sorozat van: az Opteron 4200 sorozat (kódneve Valencia, max. nyolc maggal) és az Opteron 6200 sorozat (kódneve Interlagos, max. 16 maggal).
Teljesítmény
Teljesítmény Linux alatt
2011. október 24-én, a Phoronix által végzett első generációs tesztek megerősítették, hogy a Bulldozer CPU teljesítménye valamivel kisebb, mint amit vártak tőle. Sok tesztben a CPU ugyanazon a szinten teljesített, mint az idősebb generációs Phenom 1060T.
A teljesítmény később lényegesen megnövekedett, ahogy megjelentek a különféle fordítóprogram-optimalizációk és CPU meghajtó javítások (fixek).
Teljesítmény Windows alatt
Az első Bulldozer processzorok fogadtatása vegyes volt. Kiderült, hogy az FX-8150 gyengén teljesít azokban a teljesítménytesztekben, amelyek csak kevés szálon futhatnak, lemaradnak a második generációs Intel Core i* sorozatú processzorok mögött és ugyanazt vagy valamivel alacsonyabb teljesítményt mutatnak, mint az AMD saját Phenom II X6 processzorai alacsonyabb órajeleken. Nagyon sok szálú tesztekben az FX-8150 azonos szinten teljesít, mint a Phenom II X6 és az Intel Core i7 2600K, a teszttől függően. Mivel az Intel Core i5 2500K sokkal egyenletesebb teljesítményt nyújt alacsonyabb áron, az eredmények nem nyűgözték le az elemzőket. A processzor rendkívül energiaigényesnek bizonyult nagy terhelés alatt, különösen túlhajtott órajellel, az Intel Sandy Bridge processzorával összehasonlítva.