AMD K11 a její vztah k předcházejícím procesorům Referát do PAP Jan Uhlář
Ohlédnutí za architekturou AMD K8 Oficiální ohlášení x86-64 architektury, přímo firmou AMD, se událo 5. října 1999 na Mikroprocesorovém Fóru v Sunnyvale v Kalifornii. Procesory označované K8 přinesly instrukční sadu x86-64 a Lightning Data Transport sběrnici. Později jsou tyto procesory souhrnně označované jako AMD64 a LDT sběrnice dostala oficiální jméno HyperTransport sběrnice. Představení prvních K8 procesorů se datuje již na rok 2001, kdy AMD předvedlo první vzorky - tehdy na pouhých 800 MHz. Architektura K8 tak nabrala další zpoždění, přestože bylo uvedení původně plánováno již na konec roku 2001. Z důvodů nízké výtěžnosti (díky problémům se SOI, implementací mezispojů s použitím tehdy nového Low-k dielektrika) a nemožnosti dosáhnout dostatečné frekvence, tak došlo k uvedení až v roce 2003, konkrétně 22. dubna pro Opterony a 23. září pro Athlony 64, respektive Athlon FX.
Aneb kde to všechno začalo, jádro "Hammer" a schéma jednotlivých částí čipu - 130 nm SOI výrobní technologie a 9 vrstev měděných mezispojů na ploše 194 mm2 Co tedy AMD64 a architektura AMD K8 označovaná také Hammer přinesla? Asi nejvýraznějším přínosem, kromě 64-bit instrukční sady, byl jednoznačně IMC (Integrated Memory Controller) neboli integrovaný řadič paměti a HyperTransport sběrnice, která nahradila FSB (Front Side Bus). Samozřejmostí jsou i úpravy jádra, přibylo více registrů a zachována zůstala zejména kompatibilita s x86. Svou verzi a podporu AMD64 přivedl na trh později i Intel pod zkratkou EM64T. Dalším přelomovým okamžikem bylo uvedení dvoujádrových Opteronů 21. dubna 2005, později následované dvoujádrovými Athlony 64 X2. Na trh postupně přišlo několik revizí těchto procesorů, došlo několikrát ke změně výrobní technologie a její miniaturizaci. Od původních K8 vyrobených pomocí 130 nm SOI výrobní technologie, přes několik revizí procesorů, až po nynější, dříve velice nepravděpodobné 3.2 GHz pro dvoujádrové procesory. V dobách jednojádrových Athlonů FX by tomu zřejmě věřil málokdo. Pomocí 65nm SOI výrobní technologie jsou v současnosti produkovány zejména pomalejší dvojádrové Athlony a
samozřejmě také nově K10, ale nepředbíhejme. Po změně socketu od 754 a 940 pro Athlony FX a Opterony, přes socket 939 s již dvoukanálovým řadičem paměti, až po současné platformy pro DDR2 paměti, socket AM2 a socket F (socket 1207 pro 2P+ stanice), se AMD snažilo držet možnou podporu pro další generace procesorů - a ne jinak tomu bude u nové architektury AMD K10. Rok se s rokem sešel a i architektury procesorů, stejně jako všechno, stárnou. Bohužel i Barcelona se mírně opozdila. Naštěstí není zpoždení tak výrazné a nové procesory založené na architektuře AMD K10 jsou již tady.
Architektura AMD K10 První zmínky o architektuře K10, respektive dříve pojmenované K8L, se objevují v médiích již poměrně dlouhou dobu. První Barcelona v revizi B0 pochází ze začátku prosince 2006. Do současnosti, zejména z důvodů špatné výtěžnosti výše taktovaných kousků, již prošla třemi revizemi. B1 přišla na řadu v březnu letošního roku, následovaná jádrem s revizí B2, která přišla na svět krátce před červnovým Computexem 2007 v Taipei. Zde se již údajně podařilo většinu potíží vyřešit. Za zmínku jistě stojí i to, že s K10, ačkoliv ještě není na trhu, v podání jádra Agena a Phenomu FX přesáhlo AMD již magickou hranici 3.0 GHz. Ačkoliv je to na čtyřjádro (v tomto stádiu a ještě před uvedením) velice dobrý výsledek, důležité bude to, co AMD bude skutečně schopno dodat na trh a v jakém množství.
Čtyřjádro "Barcelona" a schéma jednotlivých částí čipu, 65 nm SOI výrobní technologie a 11 vrstev měděných mezispojů, 463 milionů tranzistorů na ploše 285 mm2 pro šetření energií má nová Barcelona 6 frekvenčně nezávislých PLL (Phase-Locked Loop) smyček a 5 senzorů pro snímání teploty jádra. Barcelona je také největší komerčně uvedený čip od AMD a již na první pohled se jedná o pořádný "kus křemíku" - nativní čtyřjádro s rozměry 283 mm2 vyrobené pomocí 65nm SOI technologie s 11 vrstvami měděných mezispojů s použitím řady dalších pokročilých technik jako SSOI nebo SiGe tak na první pohled zaujme svou velikostí. Co K10 přináší? Pojďme se podívat na změny v architektuře K10.
Nejprve krátké představení nové generace Opteronů - jedná se o nativní čtyřjádro s řadou úprav architektury a L3 cache. Velké úsilí bylo kladeno zejména na efektivitu a udržení spotřeby a kompatibility se stávající řadou Opteronů. Stejně jako u předešlé generace Opteronů, s podporou DDR pamětí, i zde stačí pouhý update BIOSu.
Barcelona přináší 128-bit FPU, načítání dat mimo pořadí, vyšší frekvence pro severní můstek, nezávislé kanály operační paměti, snížení latencí díky L3 cache a řadu dalších drobných úprav architektury. AMD slibuje růst IPC až o 15 procent, ale cílové HPC aplikace a změny ve FPU přinesou výkon podstatně vyšší. Nezávislé kanály DRAM a 2MB L3 cache pomohou výrazně škálovatelnosti K10 v aplikacích náročných na propustnost a Nested paging má
zvýšit výkon Opteronů ve virtualizaci. Jádro bylo navrženo s ohledem na další možné úpravy architektury a zejména navýšení L3 cache. Přibylo také několik instrukcí pojmenovaných jako SSE4A.
IPC májí stoupnout přibližně o 15 procent, u HPC aplikací ale bude nárůst výkonu podstatně vyšší
Blokové schéma procesorů z rodiny 10h od AMD
Struktura cache AMD K10 a IMC, HyperTransport 3.0 Poměrně velice výrazné jsou změny v architektuře cache. Asi tou nejpodstatnější je to, že z paměti jsou data načítána rovnou do L1 cache. L2 cache je nesdílená a dedikovaná vždy pouze konkrétnímu jádru - spolu s L3 slouží jako "odložiště" ne právě potřebných dat. L3 cache je sdílená pro všechna jádra a počítá se se snadnou rozšiřitelností. 45nm "K10.5" již bude mít L3 cache s kapacitou 6 MB.
L1 cache je nejblíže výpočetním jednotkám a je tedy nejrychlejší. Slouží k uchování aktuálně kritických dat. Rozděluje se na instrukční a datovou a obě mají po 64 KB. Obvykle L1 cache získává data přes L2, do které jsou načítána data z RAM - u K10 jsou ale data vždy z paměti načtena přímo do L1. To samozřejmě poskytuje nejvyšší možný výkon v případě načítání dat, ale přináší i jisté nedostaky. L1 má nízkou kapacitu, a tak je zde zcela zasadní kvalitní správa cache. L1 cache má 2-cestnou asociativitu a přístupová doba má být 3 cykly. Zde již přichází na řadu L2 cache. L2 cache je také nesdílená a je určena vždy pouze konkrétnímu jádru. Jedná se prakticky o cache, která slouží k "přelévání" dat mezi L1 a L2 a zpět. Stejně jako v předcházející generaci Opteronů při přesunu dat z L2 do L1 jsou data z L2 smazána, což zabraňuje duplicitám a L2 tak slouží jako přechodný zásobník L1. Protože je L2 nesdílená, nemůže tak dojít k zaplnění daty jiného jádra (případně se jedná o kopie, pokud jádra pracují se stejnými daty). Stejně jako jakýkoliv koncept má i tento pár nedostatků - v případě, že jádro potřebuje více místa, než je aktuálně v L2 k dispozici, není snadné získat místo pro další data. L2 má 16ti-cestnou asociativitu a přístup k L2 je 12 hodinových cyklů. Nově je v AMD procesorech použita L3 cache. L3 cache je sdílená mezi všechna jádra a v případě potřeby dále rozšiřitelná. Sdílená L3 poskytuje několik výhod. Obecně, pokud nějaké jádro potřebuje více místa pro data, lze použít L3. Správa cache navíc přináší možnost, aby sdílená data (pro více jader) mohla mít v L3 jedinou společnou kopii. To je vhodné například pro multimediální aplikace. L3 není čistě exkluzivní ani inkluzivní - nemusí vždy data načtená do L1 smazat, ale zde záleží na tom, jestli další jádra data ještě používají. L3 cache také není plněna z paměti, ale z L1, a slouží k
uchování dat přetečených z L2. Latence L3 není zatím známa, asociativita je 32-cestná. Dalším dílkem skládačky je IMC neboli integrovaný řadič paměti. Ten má v této hierarchii samozřejmě své nezastupitelné místo. Dva nezávislé 64-bitové kanály a nízké latence přináší výkon zejména v případě vícevláknových aplikací a u software, který je náročný na propustnost. K10 tak může v jednu chvíli data číst i zapisovat.
Zlepšení jsou i na úrovni HyperTransport sběrnice. HyperTransport 3.0 přinese frekvenci až 2600 MHz, vyšší výkon a propustnosti. Sběrnice umí pracovat jak v 16-bitovém režimu, tak být rozdělena na dva 8-bitové linky (a může být překonfigurována "za provozu"). To se hodí zejména pro multiprocesorové prostředí, kdy jsou třeba co nejnižší latence a je tak možné spojit více socketů. Maximální propustnosti podle specifikací vzrostou z 11,2 GB/s až na 20,8 GB/s. Samozřejmostí je Power Management, který dovoluje optimalizovat spotřebu Mezi další technologie K11 má být rozšíření instrukční sady, tentokrát SSE5. Ty jsou dílem AMD a jedná se o podobné rozšíření jako 3DNow! nebo SSE - budou slučovat řadu dosavadních instrukcí SSE3, SSE4 a tak dále. Kompletní seznam instrukcí a příklady použití naleznete například na stránkách AMD o SSE5 nebo v příslušném dokumentu AMD64 Technology 128-Bit SSE5 Instruction Set. K10 zatím dostala do vínku pouze SSE4A, což ale nemá s kompletní sadou SSE4 od Intelu příliš společného (až na instrukci POPCNT). Zda K11 dostane "do vínku" i plnou podporu SSE4 zatím není jasné, ale některé instrukce jsou u SSE5 minimálně podobné. AMD se ale zřejmě spokojí pouze s podporou některých instrukcí...
SSE5 v podání AMD - bude sdružovat SSE3, část SSE4 a nové SSE5 instrukce od AMD "AMD BULLDOZER", "AMD FUSION" K11?! Velmi úspěšná AMD K8 pokračovala nevydáním AMD K9 a nevýraznou AMD K10, lepší variantou je snad AMD K10.5. Vše pokračovalo v jedné linii, která započala daleko před AMD K8.
AMD K11, má však být od základu nová architektura, jejíž příchod již ohlašovala platforma AMD 4x4, které se mnozí smáli, aby později proklamovali konkurenční "Skulltrail high-end od Intelu" http://www.federmann.cz/index.php/intel/41-zakladnidesky-/58-skulltrail-high-end-od-intelu
AMD K11 s APU aneb s "Accelerated Processing Units" http://www.federmann.cz/index.php/amd/80-amd-buldozer/114-vite-co-je-apu-agpu, tedy integrovaným grafickým jádrem v roli akcelerátoru, či koprocesoru k CPU a extrémním nárůstem výkonu.
Od procesoru K11 alias "Bulldozer" se očekává v plné míře to, co K10 plně nesplnila. Mělo by se jednat o zcela nový koncept, opouštějící K8 i z ní vycházející K10. Čerpat by měla z dob K6. Pod K11 však patří i nižší segment-Bobcat-skoro úplný opak Bulldozeru. Bulldozer
bude procesor do serverů a do desktopu v podobě "supervýkonných" sestav.
Bulldozer by měl existovat převážně ve variantě 8-jádra, mluví se dokonce i o 16jádru. info flankera z 1.10.2008: Co tedy zatím vyplouvá na povrch z poslední doby? -podpora DDR3 (quadchannel) -8 až 16 jádra -nové šetřící funkce spotřeby -SSE 5 http://developer.amd.com/cpu/SSE5/Pages/default.aspx
-2x64KB L1 na jádro, 2x256KB L2 na jádro, 8MB+ L3 -512bit-ová cache v obou směrech (čtení i zápis) -první vzorky budou vyrobené 45nm technologií 4Q 2009, výroba však bude pouze na 32nm a to až ke konci roku 2010.