Blackwell: Architektura a novinky GeForce RTX 5000 [Rozbor]

Grafické karty nové generace od Nvidie – GeForce RTX 5090 a RTX 5080 – sice vyjdou až třicátého, ale už je po embargu a prvních recenzích nejvyššího modelu RTX 5090, který jsme testovali i my. V tomto článku se podíváme na architekturu Blackwell, která tyto nové grafiky pohání, a její nové vlastnosti a funkce. Od DLSS 4 přes architekturu výpočetních jednotek a výbavu čipu až po softwarovou stránku této nové generace.

SM a shadery

Jeden blok SM nadále obsahuje 128 „shaderů“ a 512KB soubor registrů a 128KB L1 cache. Těmto shaderům či shaderovým jednotkám Nvidia nepřesně říká „Cuda jádra“, ale ve skutečnosti v GPU představuje jedno „jádro“ celý blok SM, jednotlivé shaderové jednotky jsou jen „pruhy“ SIMD jednotek tohoto jádra.

Nvidia v této nové architektuře změnila schopnosti shaderových jednotek. Dříve polovina jednotek uměla počítat běžné floating-point operace, které jsou u grafických aplikací výchozím „chlebem“ GPU, druhá polovina přidaná od generace Turing uměla počítat doplňkové celočíselné operace. Od generace Ampere byla tato druhá sada jednotek generalizována a umí jak INT, tak FP operace.

Nyní Nvidia udělala to, že stejné schopnosti dala i první polovině jednotek, takže nyní všechny shadery mohou zpracovat buď INT, nebo FP operaci (nikoliv obojí najednou). Výkon čistě v FP32 operacích se tímto nezmění. Narůst by mohl tehdy, pokud běžící kód obsahuje více než polovinu celočíselných operací, což je asi méně typické, nebo aspoň části, kde INT dominuje.

Blok SM architektury Blackwell

Těchto 128 shaderů má standardní jednotky podporující 32bitovou přesnost. Separátně jsou v každém bloku SM také jednotky pro výpočty s dvojitou přesností (FP64), ale jsou jen dvě (proti 128 jednotkám FP32/INT32). Operace FP64 tedy GPU umí zpracovávat jen s výkonem 1/64 plného výkonu v FP32 – je to víceméně jen pro kompatibilitu.

Vylepšený Shader Execution Reordering

Vedle toho shadery architektury Blackwell mají vylepšené vykonávání operací mimo pořadí (SER 2.0, neboli Shader Execution Reordering 2.0) proti architektuře Ada Lovelace. Logika provádějící dynamické řazení operací má být až 2× efektivnější (těžko ale říct, jak je to měřeno). SER 2.0 má mít menší režii a lepší schopnost najít příležitosti ke zlepšení výkonu.

Shader Execution Reordering 2.0

Tato schopnost SER není aktivní globálně a neustále, ve výchozím stavu ji GPU nepoužívá a není to tedy úplně ekvivalent out-of-order execution u CPU. Nvidia uvádí, že vývojáři hry mohou SER zapnout volitelně skrze API. Zřejmě nemusí mít vždy pozitivní efekt na výkon, takže využití této technologie je „opt-in“. Vývojáři ji mohou použít pro funkce, u kterých profilováním zjistí, že v nich SER zvýší výkon. Zatím asi není využití této technologie ve hrách zrovna široké (uvedena byla už v GeForce RTX 4000), Nvidia uvádí, že už ji používá „několik her s ray tracingem“.

Neural shadery

Nová u shaderů architektury Blackwell je kompatibilita s tzv. Neural Shadery. Tou jsou operace využívající tensor jádra, ale ne jako samostatnou jednotku, ale přímo ze shaderových programů běžících na shaderech v SM. Funguje to tak, že v takovém shaderovém programu je vlastně volána nějaká předtrénovaná neuronová síť s nějakým poměrně malým modelem.

Toto dříve nebylo možné, protože tensor jádra nebyla s shaderovými jednotkami úzce propojená. Jde to právě až v GPU architektury Blackwell (poznámka: toto je něco, co architektury AMD možná nemusí řešit, protože u nich je alespoň nyní jejich forma akcelerace AI integrovaná do klasických výpočetních jednotek s použitím stejných pracovních registrů a použití klasických shaderových instrukcí a instrukcí WMMA akcelerujících AI v jednom shaderovém programu je nejspíš možné automaticky – nevíme ovšem, zda se tento přístup nezmění u budoucí architektury UDNA).

Stochastic Texture Filtering

Nvidia pro Blackwell navrhuje techniku Stochastic Texture Filtering, která se používá jako určitá náhrada za složitější (trilineární, anizotropické) filtrování a využívá principu, že je výsledek částečně randomizován. Přidání šumu může předcházet artefaktům jako je moiré. Blackwell má pro potřeby této techniky v texturovacích jednotkách 2× vylepšený výkon nefiltrovaného (nearest-neighbor) interpolování. V tomto kontextu je zajímavé, že i architektura AMD RDNA 3.5 (a možná tedy i RDNA 4) přidává podporu pro akceleraci nefiltrované interpolace při texturování, možná také pro toto stochastické filtrování.

Nová tensor jádra: Podpora FP6 a FP4

Tensor jádra jsou už v páté generaci a jejich nová architektura přináší podporu pro operace s přesností FP4. Toto umožňuje provést dvojnásobek operací proti výpočtům s 8bitovou přesností INT8 či FP8. Současně uložení dat modelu o určitém počtu parametrů potřebuje jenom polovinu kapacity paměti proti modelu s 8bitovou přesností.

Ale nevýhodou je extrémně nízká přesnost těchto hodnot, respektive je otázka, zda se o přesnosti ještě dá mluvit. FP4 by mělo dávat jen dva bity (čili jen čtyři možné hodnoty) pro exponent a jeden bit čili dvě hodnoty pro mantisu, čtvrtý bit je znaménko. Zdá se ale, že pro AI využití je navrhován i formát s 3bitovým exponentem a žádnou mantisou. Báze by měla být stále dva, jde stále o binární floating-point čísla. Takovéto datové typy lze možná chápat spíš jako cosi na pomezí expresivnějšího upgradu logické hodnoty true/false (což je jednobitová hodnota) a klasické proměnné ukládající čísla.

Tensor jádra 5. generace podporují datový typ FP4

Neuronové sítě (AI modely) jsou obecně překvapivě kompatibilní s nízkou přesností dat – alespoň při inferenci – proti tomu, jakou přesnost byste potřebovali pro obvyklé numerické výpočty. U INT8/FP8 už ale bývá pozorována zhoršená kvalita výsledků, což se u Int4 nebo FP4 musí projevit o to víc. FP4 model se stejným počtem parametrů jako FP8 by asi měl mít horší výsledky. Je proto možné, že použití těchto hodnot bude omezené jen na některé aplikace, nebo se bude muset různě kompenzovat (třeba tím, že v 4bitové přesnosti bude jen část výpočtů, nebo že bude model mít více parametrů). Ono dvojnásobné škálování výkonu tedy asi nemusí být něco automatického.

Jak bylo zmíněno, důležitá může být schopnost s 4bitovými hodnotami vměstnat model o určitém počtu parametrů na GPU s malou pamětí (třeba 32 GB místo 64 GB), ale vždy u toho bude ona nevýhoda horší kvality, takže je otázka, jak kompromisní toto v praxi bude. Alternativou k FP4 ještě může být datový typ FP6, který Blackwell také nově podporuje. U toho už asi nebude dvojnásobný výkon a jeho smyslem je patrně úspora paměti.

Tensor jádra v herních čipech Blackwell mají po softwarové stránce umět stejný typ neuronových sítí (kterému Nvidia říká transformer engine 2. generace) jako serverová verze Blackwellu GB200.

RT jádra s 2× výpočetním potenciálem

Akcelerátory RT core (jeden v každém bloku SM) jsou u GPU Blackwell ve čtvrté generaci. Jejich hlavní novinkou je dvojnásobná kapacita pro zpracování průsečíků paprsků s trojúhelníky objektů ve scéně za jeden cyklus frekvence. U Ada Lovelace by RT jádro mělo zvládat 4 průsečíky za cyklus, pokud máme správné informace, takže u Blackwellu by to snad mohlo být 8 za cyklus.

RT jádro generace Blackwell má 2× vyšší výkon dostupný pro analýzu průsečíků paprsků světla a trojúhelníků 3D modelu

Počet zpracovatelných průsečíků paprsků a boxů BVH není uveden, ani není zmíněno jeho zlepšení. To by ale snad nastat mohlo, protože u Ada Lovelace snad také byly podporovány čtyři za cyklus a je divné, že by bylo podporováno méně operací na úrovni pomocných boxů BVH než se samotnými trojúhelníky.

Článek pokračuje na další straně.


Nové x86 instrukce ACE: Detaily akcelerace AI v jádru AMD Zen 7

Odvěcí konkurenti AMD a Intel byli dotlačeni k tomu, aby založili společné konsorcium, která má do budoucna sladit kompatibilitu a nová rozšíření jejich x86 procesorů, zatímco doteď odlišnosti často sloužily jako zbraň proti konkurenci. Na podzim byly představeny technologie, které se takto stanou společným standardem: AVX10/AVX-512, APX, ChkTag, FRED a nově také maticové rozšíření pro AI výpočty ACE, o kterém jsme doteď moc nevěděli. Celý článok „Nové x86 instrukce ACE: Detaily akcelerace AI v jádru AMD Zen 7“ »

Lepší výkon pro procesory Intel: Přínos technologie FRED změřený

Zatímco k procesorům AMD Zen 6 toho zatím moc známo není, docela dost toho uniká na internet o konkurenčních procesorech Nova Lake od Intelu. I Nova Lake by mohla být zajímavá inovativní generace díky novým jádrům, která vedle návratu AVX-512 také poprvé přinesou rozšíření APX. Jejich výkon ovšem podpoří ještě jedna nová technologie: FRED. Je již v procesorech Panther Lake a v některých programech má zajímavé přínosy. Celý článok „Lepší výkon pro procesory Intel: Přínos technologie FRED změřený“ »

Unified Core: Intel chystá přelomovou změnu v procesorech

Jak známo, od roku 2021 používá Intel hybridní architekturu CPU s velkými a malými jádry (od procesorů Core 12. generace, ale vyzkoušel si to už s experimentálním procesorem Lakefield o rok a půl dříve). Malá jádra „E-Core“ odvozená od někdejších čipů Atom jsou ovšem u řady lidí dost nepopulární. Na obzoru se teď ale rýsuje razantní změna – zatímco teď má Intel dvě zcela rozdílné architektury, v budoucnu přejde na jedinou. Celý článok „Unified Core: Intel chystá přelomovou změnu v procesorech“ »

One comment Pridať komentár

Pridaj komentár

Vaša e-mailová adresa nebude zverejnená. Vyžadované polia sú označené *