Únik už to „vyspoiloval“, ale v pondělí AMD oficiálně oznámilo nejnovější a nejvýkonnější výpočetní GPU – Instinct MI250X. I tak ale tyto akcelerátory překvapily. Místo hloupého „MCM“ používají pouzdření s pokročilejším ekvivalentem Intelova EMIB a mají mnohem vyšší výkon, než se zdálo. Hodně zajímavé také je, že jde o první 6nm čip od AMD. Tato GPU jdou do exascale počítače Frontier, ale budou mít i volně prodávanou verzi.
První 6nm čip AMD: Aldebaran s architekturou CDNA2
Nové výpočetní GPU se formálně jmenuje AMD Instinct MI200 Series (řada MI200), zatím od něj budou ovšem existovat tři modely, označené Instinct MI210, MI250 a MI250X. Verze MI250X a MI250 má mezaninové provedení Open Accelerator ModulE (OAM) podobné provedení SXM, které Nvidia používá u svých výpočetních modulů. OAM je ale standardizovaný používá ho více výrobců šasi/akcelerátorů včetně Intelu, zejména pro AI ASICy. Model MI210 je v provedení karty PCI Express pro serverová šasi klasického střihu.
Instinct MI200 (jeho kódové označení by mělo být Aldebaran) navazuje na předchozí počin firmy, akcelerátory MI100 (Arcturus), s nimiž poprvé přišla na výpočetní nasazení a AI specializovaná architektura CDNA. Generace MI200 přináší její vylepšenou verzi CDNA2, má tedy architekturu inovovanou.
Vedlo toho je ale upraveno I/O. Akcelerátor poskytuje linky Infinity Fabric 3.0, a umožňuje tak koherentní propojení mezi svými sousedy – GPU, ale také s hostitelskými CPU, musí to ovšem být procesory Epyc od AMD. V systému tedy vše může mít sdílenou paměť, což zjednodušuje programování.
Druhá důležitá novinka je, že Aldebaran/MI200 používá vícečipovou stavbu GPU, respektive asi lze říci, že jde o GPU čipletové. U grafických karet bývalo běžné, že se na jednu kartu osadilo více GPU, propojených na úrovni PCI Expressu, ale MI200 má své dva čipy integrované hlouběji, takže AMD toto řešení označuje jako „první multi-die GPU“, což implikuje, že jde o něco jiného, než předchozí multi-GPU karty. V jednom pouzdru jsou dva čiplety GCD (Graphics Computer Die, nebo možná lépe GPU Compute Die, protože grafiku nejspíš ani neumí počítat), propojené vysokorychlostním rozhraním.
Dva 6nm čiplety
Čiplet GCD je vyráběný 6nm procesem TSMC (N6) a nevíme sice zatím, jak je velký. Dle AMD má obsahovat 29,1 miliard tranzistorů, což je jen o 14 % více, než v 7nm čipu Arcturus (ten prý měl 25,6 miliardy). Asi by proto mohl být o dost menší než výpočetní GPU Nvidia Ampere GA100, jež má 54,2 miliard tranzistorů v 826 mm², nejspíš by mohl být někde mezi 450 a 500 mm². Na jednom GCD se nachází 112 CU, tedy 7168 shaderů. V praxi ale na každém čipletu GCD budou nějaké CU vypnuté kvůli tomu, aby se daly použít i čipy s defekty, což je u velkých GPU téměř nevyhnutnost.
Model Instinct 250X má mít dohromady 220 CU a 14 080 shaderů. Verze MI250 pořád v provedení OAM má 104 CU v každém GCD, takže celek dostane 208 jednotek CU a 13 312 shaderů. Zatím nemáme informace o verzi MI210, ta bude patrně ještě více zredukovaná.
Arcturus a architektura CDNA2 opět obsahuje i Matrix cores pro akceleraci AI. U těch se uvádí počet čtyř na každou CU, takže model MI250X jich má 880, model MI250 pak 832.
3,2 TB/s paměťové propustnosti
Každý čiplet GCD má svůj paměťový řadič, jenž je tvořen čtyřmi kanály (4096bitová sběrnice), na kterých je napojena paměť HBM2E s efektivním taktem 3,2 GHz. Celková sběrnice obou GCD dohromady je tak 8192 bitů a propustnost dohromady 3,2 TB/s, toto je stejné pro model MI250 i MI250X. Obě poloviny by asi měly být funkčně samostatné, takže AMD by asi mělo být schopné uvést i jednočipletovou verzi s 4096bitovou pamětí a 110 CU. Je dokonce možné, že ta PCIe verze MI210 bude vyrobená takto.
Kapacita paměti je 64 GB HBM2E pro každou polovinu, celek má tedy 128 GB. Díky koherentnímu propojení může GCD přistupovat i do paměti připojené k druhému GCD, ovšem bude při tom mít sníženou propustnost. Je to víceméně jako u Epyců nebo Threadripperů první generace.
Propojení linkami Infinity Fabric 3.0
Vedle výpočetních jednotek je na každém čipletu GCD přítomných osm rozhraní Infinity Fabric 3.0, z nichž čtyři slouží k propojení s druhým čipletem, tři by typicky asi měly být propojené se sousedními akcelerátory a čtvrtý s hostitelským CPU. Trošku odlišné je to u modelu Instinct MI250. Ten má jen šest linek a nepodporuje koherentní zapojení do procesoru (možná se počítá s tím, že bude provozován často ve starších serverech nebo serverech s CPU Intel, kde není možné se k CPU přes Infinity Fabric připojit).
Linky propojující akcelerátor se sousedy a s procesorem jsou vyvedené na piny onoho mezaninového provedení OAM, o propojení se stará základní deska. Šířka jedné linky je 16 bitů a efektivní rychlost 25 Gb/s na jeden bit duplexně, takže jedna linka dodává 50 GB/s v obou směrech. Což znamená, že mezi oběma polovinami Instinctu MI250/MI250X je propustnost 200 GB/s obousměrně, do sousedních GPU a do procesoru je to pak obvykle těch obyčejných 50 GB/s.
Celkové zapojení může být čtyři akcelerátory na jednom CPU, kde všechna GPU jsou přímo napojená (jedním ze svých dvou GCD čipletů). Toto je doporučené pro HPC aplikace (superpočítače). Propojení Infinity Fabric do procesoru ale zřejmě potřebuje zvláštní verzi Epyců, není jasné, zda fungují všechny modely generace Epyc 7003, nebo jsou třeba nějaké zvláštní modely s odlišným socketem.
Ale je možné propojit také osm akcelerátorů Instinct dohromady, což by se asi používalo pro aplikace strojového učení/AI. V takovém případě by se použila dvouprocesorová deska.
AMD samozřejmě preferuje, aby uživatelé GPU Instinct MI200 párovali s procesory Epyc, kde se dá pak také jako bonus použít ono koherentní napojení akcelerátorů k procesoru pomocí IF 3.0. Ale podporováno je také zapojení s konkurenčními procesory – nebo s procesory Epyc na deskách, které nepodporují propojení přes Infinity Fabric. V takovém případě se linka IF 3.0 použitá ke komunikaci s CPU promění na rozhraní PCI Express 4.0 ×16, které ale není koherentní a má propustnost jen 32 GB/s duplexně. Mezi sebou se ale GPU mohou po IF 3.0 bavit dál.
Článek pokračuje na další straně, kde se podíváme na architekturu, výkon, spotřebu a použití.
Galerie: AMD Instinct MI200 (Aldebaran)
Výkon: top ve vědeckých simulacích, v AI na Nvidii nestačí
AMD provozuje čiplety GCD zdá se na 1700 MHz, což je shodné pro modely MI250 i MI250X. Dosažený teoretický výkon je přitom 47,9 TFLOPS pro MI250X a 45,3 TFLOPS pro MI250. Ale to je prosím ve výpočtech s dvojitou přesností FP64. AMD posílilo výkon FP64 jednotek na dvojnásobek proti architektuře CDNA, navíc má GPU dva čiplety (další 2×).
Zatímco Instinct MI100 dosahoval ve výpočtech FP64 jen 11,5 TFLOPS, MI250X má výkon 4,16× vyšší. Nvidia A100 má v FP64 teoretický výkon 9,7 TFLOPS, tam už je rozdíl téměř pětinásobný (4,93×).
Je zajímavé, že architektura CDNA2 a GPU Instinct řady MI200 nemají, jak byste očekávali, dvojnásobný výkon v FP32. AMD ho uvádí stejný jako FP64. Ve skutečnosti lze dvojnásobných 95,7 TFLOPS dosáhnout, ale místo běžného vektorového programování se musí použít tzv. packed instrukce a datové formáty, kdy se zpracovávají dvě hodnoty FP32 uložené v jedné hodnotě FP64. Toto vyžaduje úpravu kódu (podobně jinak Radeony od architektury Vega zpracovávají výpočty FP16. Kvůli obtížnějšímu programování proto AMD dvojnásobný výkon ve FP32 neinzeruje.
Toto zaměření na FP64 především ukazuje, kam je Instinct Mi200 mířený: do superpočítačů pro vědecké simulace. Sekundárně je pak dostupná podpora AI operací na Matrix jádrech, ale onen konvenční FP32 výkon ležící někde mezi tím, který je v tradičních GPU a ve hrách nejpoužívanější, architektura CDNA 2 docela drsně upozaďuje.
Změny v CU architektury CDNA 2
Proč to takto je? AMD v architektuře CDNA 2 udělalo to, že místo aby rozšířilo jednu CU na 128 jednotek FP32 (dosud CU měla 64 jednotek FP32), tak zůstalo 64 jednotek, které se ale z FP32 rozšířily na nativní FP64, zatímco počet zůstal. Pokud tedy chcete dvojnásobný výkon v FP32, musí se použít Packed operace a formát dat. CU je jinak členěná na čtyři segmenty SIMD16, jako v CDNA 1 a jako v GCN, z níž linie CDNA vychází, zatímco architektura RDNA přešla na 2×SIM32.
Novinka je, že i Matrix jádra podporují i výpočty v dvojité přesnosti. V těch dosahují dvojnásobného výkonu proti běžným FP64 jednotkám, akcelerátory MI250X/250 pak umí až 95,7 TFLOPS/90,5 TFLOPS. Ovšem Matrix jádra umí jenom operace maticového násobení, takže tento výkon je dostupný jen pro ně. Podobnou schopnost maticového násobení s FP64 na Tensor jádrech má i Nvidia GA100. Tam to také zdá se poskytuje 2× navýšení FP64 výkonu, na 19,54 TFLOPS.
Necelých 400 TFLOPS pro AI
AI výkon je až 383 TFLOPS (MI250X), respektive 362 TFLOPS (MI250) pro výpočty FP16 a toliko stejný výkon v TOPS pro operace INT8 na oněch Matrix jádrech. Se stejným výkonem by měly být podporované i výpočty ve formátu BFloat16. Nvidia A100 má uvedený o něco nižší teoretický výkon v maticových AI operacích (312 TFLOPS v Bfloat16/FP16), ale v INT8 už umí 624 TOPS, zatímco u CDNA2 se výkon použitím INT8 nezdvojnásobí. Navíc u Nvidia Ampere se lze použitím softwarové funkce Structured Sparsity dostat na efektivně dvojnásobné výkony (624 TFLOPS/1248 TOPS).
V AI výkonu tedy Nvidia dál bude vést, nemluvě o tom, že má nejspíš o dost pokročilejší softwarovou stránku věci. Navíc by už za několik měsíců také mohla uvést vlastní novou generaci serverových GPU Hopper, kde výkon pro AI výpočty, určitě půjde o hodně nahoru (už jenom proto, že příkon skočí výrazně). Pro Instinct MI200 bylo evidentně na prvním místě dosažení co nejvyššího výkonu ve vědeckých výpočtech FP64, což zase vůbec nebylo prioritou u Nvidie.
Sekundárně ale Aldebaran/MI200 bude pro AI a trénování neuronových sítí použitelný. Z tohoto důvodu má například integrovaná jádra VCN pro akceleraci videa – zejména tedy dekódování, které se v AI aplikacích využije (dekódování obrazových/video dat používaných při trénování/inferenci). Podporované je HEVC, H.264 a možná VP9, ale ještě ne AV1.
Spotřeba: 560 W
Už v předešlém úniku se zmiňovala poměrně vysoká spotřeba. Podle oficiálních specifikací je ale nakonec TDP Instinctů MI250X a MI250 dokonce ještě vyšší, 560 W. Toto už by asi v provedení karty PCI Express nebylo v serverech uchladitelné. Moduly OAM ale umožňují nasadit na GPU přímo vysoký vzduchový chladič s heatpipe, který je pasivní. Při intenzivním (a velmi hlučném) nuceném proudění v serverovém šasi je asi 560 W pořád možné uchladit i vzduchově (AMD alespoň vzduchové chalzení ukazuje na oficiálních renderech).
Moduly OAM ve specifikacích počítají s tím, že akcelerátory tohoto provedení mohou mít spotřebu až 700 W, od čehož už není Instinct MI250X/MI250 tak daleko. Je celkem pravděpodobné, že provozovatelé budou tato GPU často chladit kapalinou, což je už zejména v superpočítačích docela časté.
První dodávky jdou do Frontieru, obecná dostupnost Q1 2022
Právě superpočítače by měly být prvním odbytištěm těchto GPU. Instinct MI250X bude instalován do superpočítače Frontier, jenž by se asi teď měl stát prvním Exascale strojem v USA. První dodávky Aldebaranů začaly už během třetího čtvrtletí a zřejmě pořád běží. Mělo by jít o desetitisíce GPU, jeden uzel Frontieru bude sestávat z procesorů Epyc Milan-X a čtyř Instinctů MI250X. Běžný provoz má začít začátkem roku 2022.
Na běžném trhu/pro další zákazníky budou Instincty řady MI200 dostupné po dokončení Frontieru, mělo by to být v prvním kvartále roku 2022. Cenu firma neuvádí, ale bude nejspíš v tisících dolarů, ne-li pěticiferná.
Galerie: AMD Instinct MI200 (Aldebaran)
Zdroje: AMD, Tom's Hardware, AnandTech