Nvidia RT Cores vs. AMD Ray Accelerators - vysvětleno

S první generací grafických karet RTX v roce 2018 představila Nvidia světu zcela novou funkci, která měla změnit prostředí hraní, jak jej známe. První generace grafických karet řady RTX 2000 byla založena na nové architektuře Turing a přinesla podporu pro Ray Tracing v reálném čase ve hrách. Ray Tracing již existoval v profesionálních 3D animacích a syntetických polích, ale Nvidia přinesla podporu pro vykreslování her v reálném čase pomocí technologie Ray Tracing namísto tradiční rasterizace, která měla změnit hru. Rasterizace je tradiční technika, pomocí které se hry vykreslují, zatímco Ray Tracing využívá složité výpočty k přesnému zobrazení interakce a chování světla v herním prostředí, jako je tomu v reálném životě. Můžete se dozvědět více o Ray Tracing and Rasterization v tomto obsahu .



Ray Traced Reflections může být tou nejpříjemnější aplikací Ray Tracing ve hrách - Obrázek: Nvidia

V roce 2018 AMD neměla odpověď na řadu grafických karet Nvidia RTX a jejich funkce Ray Tracing. Červený tým prostě nebyl připraven na inovativní představení Nvidia, což ve srovnání s Team Green znamenalo značnou nevýhodu jejich špičkových nabídek. AMD RX 5700 XT byla fantastická grafická karta za cenu 399 $, která konkurovala výkonu 499 $ RTX 2070 Super. Největším problémem AMD však byla skutečnost, že konkurence nabídla technologii, kterou nemají. To spolu s různorodou sadou funkcí, podporou DLSS, stabilními ovladači a celkovým vynikajícím výkonem staví nabídky Nvidia do značné výhody, pokud jde o generaci Turing vs RDNA.



Řada AMD RX 6000 s Ray Tracing

Rychle vpřed do roku 2020 a AMD konečně přineslo boj o nejlepší nabídky Nvidia. Společnost AMD nejen zavedla podporu pro sledování paprsků v reálném čase ve hrách, ale také vydala 3 grafické karty, které jsou extrémně konkurenceschopné vůči špičkovým grafickým kartám od Nvidia. AMD RX 6800, RX 6800 XT a RX 6900 XT bojují proti sobě s Nvidia RTX 3070, RTX 3080 a RTX 3090. AMD je konečně opět konkurenceschopná na samém konci produktové řady, což je slibná zpráva i pro spotřebitele.



Raytracing je jednou z klíčových funkcí, které AMD uvedlo tuto generaci - Obrázek: AMD



Věci však nejsou zcela pozitivní ani pro AMD. Ačkoli AMD zavedlo podporu pro sledování paprsků v reálném čase ve hrách, jejich výkon sledování paprsků získal vlažný příjem jak od recenzentů, tak od běžných spotřebitelů. Je to pochopitelné, protože se jedná o první pokus AMD o Ray Tracing, takže by bylo trochu nefér očekávat, že při svém prvním pokusu poskytnou nejlepší výkon Ray Tracing. Vyvolává však otázky ohledně způsobu, jakým implementace Ray Tracing AMD funguje ve srovnání s implementací Nvidia, kterou jsme viděli u architektury Turing a nyní Ampere.

Sada technologií RTX od společnosti Nvidia

Hlavním důvodem, proč se pokus AMD zdá být ve srovnání s pokusem Nvidie ohromující, je to, že AMD v podstatě hrálo krok s Nvidií a na vývoj a zdokonalení implementace Ray Tracing mělo víceméně jen 2 roky času. Nvidia na druhé straně vyvíjí tuto technologii mnohem déle, protože neměla proti komu konkurovat na samém vrcholu produktové řady. Nvidia nejen poskytla podporu Ray Tracing před AMD, ale také měla lepší ekosystém podpory postavený kolem této technologie.

Společnost Nvidia navrhla řadu grafických karet RTX 2000 s primárním zaměřením na Ray Tracing. To je patrné na celém návrhu samotné Turingovy architektury. Nvidia nejen znásobila počet jader CUDA, ale také přidala specifická vyhrazená jádra Ray Tracing známá jako „RT Cores“, která zpracovávají většinu výpočtů potřebných pro Ray Tracing. Nvidia také vyvinula technologii známou jako „Deep Learning Super Sampling nebo DLSS“, což je fantastická technologie, která využívá hluboké učení a AI k provádění úkolů upscalingu a přestavby a také kompenzuje ztrátu výkonu Ray Tracingu. Společnost Nvidia také představila speciální karty „Tensor Cores“ na kartách řady GeForce, které jsou navrženy tak, aby pomáhaly při úlohách Deep Learning a AI, jako je DLSS. Kromě toho Nvidia také spolupracovala s herními studiemi na optimalizaci nadcházejících her Ray Tracing pro vyhrazený hardware Nvidia tak, aby bylo možné maximalizovat výkon.



V Ray Tracing se světlo ve hře chová jako ve skutečném životě - Obrázek: Nvidia

RT jádra Nvidia

RT nebo Ray Tracing Cores jsou vyhrazená hardwarová jádra Nvidia, která jsou speciálně navržena tak, aby zvládla výpočetní pracovní zátěž spojenou s Ray Tracing v reálném čase ve hrách. Mít specializovaná jádra pro Ray Tracing odlehčí spoustu zátěže od CUDA Cores, které jsou vyhrazeny pro standardní vykreslování ve hrách, takže výkon není příliš ovlivněn nasycením využití jádra. RT Cores obětují všestrannost a implementují hardware se speciální architekturou pro speciální výpočty nebo algoritmy k dosažení vyšších rychlostí.

Běžnější algoritmy pro zrychlení Ray Tracing, které jsou běžně známé, jsou BVH a Ray Packet Tracing a schematický diagram Turingovy architektury také zmiňuje BVH (Bounding Volume Hierarchy) Transversal. RT Core je navržen k identifikaci a zrychlení příkazů, které se týkají vykreslování Ray Traced ve hrách.

Vysvětlení RT Core - Obrázek: Nvidia

Podle bývalého vrchního architekta Nvidia Yubo Zhanga:

'[Přeloženo] Jádro RT v podstatě přidává do SM vyhrazené potrubí (ASIC) pro výpočet průniku paprsků a trojúhelníků.' Může přistupovat k BVH a konfigurovat některé vyrovnávací paměti L0, aby se snížilo zpoždění přístupu k datům BVH a trojúhelníku. Žádost vznáší SM. Příkaz je vydán a výsledek je vrácen do místního registru SM. Prokládaná instrukce a další aritmetické nebo paměťové IO instrukce mohou být souběžné. Protože se jedná o logiku obvodu specifickou pro ASIC, lze výkon / mm2 zvýšit o řádově ve srovnání s použitím shaderového kódu pro výpočet průniku. Ačkoli jsem opustil NV, podílel jsem se na návrhu architektury Turing. Byl jsem zodpovědný za barvení s proměnlivou rychlostí. Jsem nadšený, že vidím vydání hned teď. “

Nvidia také uvádí v bílé knize Turing Architecture, že RT Cores spolupracují s pokročilým filtrováním odšumování, vysoce efektivní strukturou akcelerace BVH vyvinutou NVIDIA Research a API kompatibilními s RTX, aby bylo možné v reálném čase sledovat paprsky na jediném GPU Turing. RT Cores procházejí BVH autonomně a zrychlením testů průchodu a průsečíků paprsků / trojúhelníků odlehčují SM, což mu umožňuje zpracovat další práci vrcholů, pixelů a stínování. Funkce jako budování BVH a nové vybavení jsou zpracovány ovladačem a generování paprsků a stínování jsou spravovány aplikací prostřednictvím nových typů shaderů. Tím se jednotky SM uvolní k další grafické a výpočetní práci.

Ray's Accelerators společnosti AMD

AMD vstoupilo do závodu Ray Tracing se svou řadou RX 6000 a tím také představilo několik klíčových prvků architektonického designu RDNA 2, které s touto funkcí pomáhají. Aby se zlepšil výkon Ray Tracing GPU AMD RDNA 2, AMD začlenilo komponentu Ray Accelerator do svého základního designu výpočetní jednotky. Tyto paprskové akcelerátory mají zvýšit účinnost standardních výpočetních jednotek ve výpočetních úlohách souvisejících s paprskovým sledováním.

Mechanismus fungování urychlovačů paprsků je stále poměrně vágní, nicméně AMD poskytlo určitý pohled na to, jak tyto prvky mají fungovat. Podle AMD mají tyto urychlovače paprsků výslovný účel procházet strukturou Bounded Volume Hierarchy (BVH) a efektivně určovat průsečíky mezi paprsky a rámečky (a případně trojúhelníky). Design plně podporuje DirectX Ray Tracing (Microsoft DXR), což je průmyslový standard pro PC Gaming. Kromě toho AMD využívá k odstranění zvláštních efektů scén sledovaných paprskem oddělovač založený na Compute, místo aby se spoléhal na účelový hardware. To pravděpodobně vyvine další tlak na možnosti smíšené přesnosti nových výpočetních jednotek.

Vysvětlení urychlovačů paprsků - Obrázek: AMD

Ray Accelerators jsou také schopné zpracovat čtyři průsečíky ohraničeného svazku boxů nebo jeden průsečík trojúhelníků za sekundu, což je mnohem rychlejší než vykreslení scény Ray Traced bez vyhrazeného hardwaru. Přístup společnosti AMD má velkou výhodu, a to, že akcelerátory RT RDNA 2 mohou interagovat s mezipamětí karty Infinity. V mezipaměti je možné uložit velké množství struktur vázaných svazků současně, takže je možné odebrat určité zatížení z buněk pro správu dat a čtení paměti.

Klíčový rozdíl

Největší rozdíl, který je okamžitě zřejmý při porovnání RT Cores a Ray Accelerators je, že zatímco oba plní své funkce docela podobně, RT Cores jsou vyhrazená samostatná hardwarová jádra, která mají singulární funkci, zatímco Ray Accelerators jsou součástí standardní struktura výpočetní jednotky v architektuře RDNA 2. Nejen to, Nvidia RT Cores jsou na své druhé generaci s Ampere se spoustou technických a architektonických vylepšení pod kapotou. Díky tomu je implementace Nvidia RT Core mnohem efektivnější a výkonnější metodou Ray Tracing než implementace AMD s Ray Accelerators.

Jelikož v každé výpočetní jednotce je zabudován jediný urychlovač paprsků, AMD RX 6900 XT dostane 80 paprskových urychlovačů, 6800 XT dostane 72 paprskových urychlovačů a RX 6800 dostane 60 paprskových urychlovačů. Tato čísla nejsou přímo srovnatelná s čísly RT Core společnosti Nvidia, protože se jedná o vyhrazená jádra postavená s ohledem na jedinou funkci. RTX 3090 dostane 82 2ndJádra Gen RT, RTX 3080 dostane 60 2ndGen RT Cores a RTX 3070 získají 46 2ndGen RT jádra. Nvidia má ve všech těchto kartách také samostatná jádra Tensor, která pomáhají při strojovém učení a aplikacích AI, jako je DLSS, o kterých se můžete dozvědět více v tomto článku .

V každé výpočetní jednotce v RDNA 2 je zabudován jeden Ray Accelerator - Obrázek: AMD

Budoucí optimalizace

V této chvíli je těžké říci, co v Ray Tracingu pro Nvidia a AMD má budoucnost, ale lze provést několik poučných odhadů analýzou současné situace. V době psaní tohoto článku si Nvidia ve srovnání s nabídkami AMD drží docela významné prvenství ve výkonu Ray Tracingu. Ačkoli AMD udělala pro RT impozantní začátek, v oblasti výzkumu, vývoje, podpory a optimalizace stále zaostává za Nvidia o 2 roky. Nvidia zamkla většinu titulů Ray Tracing právě teď v roce 2020, aby využila vyhrazený hardware Nvidia lépe než to, co dala dohromady AMD. To, v kombinaci se skutečností, že RT jádra Nvidia jsou zralejší a výkonnější než Ray Accelerators od AMD, způsobují AMD nevýhodu, pokud jde o současnou situaci Ray Tracing.

AMD se zde ale rozhodně nezastaví. Společnost AMD již oznámila, že pracuje na alternativě AMD k DLSS, což je obrovská pomoc při zlepšování výkonu Ray Tracingu. AMD také spolupracuje s herními studiemi na optimalizaci nadcházejících her pro jejich hardware, což se projevuje v titulech jako GodFall a Dirt 5, kde si karty AMD RX 6000 překvapivě vedou dobře. Proto můžeme očekávat, že podpora Ray Tracing AMD bude s nadcházejícími tituly a vývojem nadcházejících technologií, jako je alternativa DLSS, stále lepší a lepší.

S tím bylo řečeno, že v době psaní je sada Nvidia RTX Suite příliš silná na to, aby ji ignoroval každý, kdo hledá vážný výkon Ray Tracing. Naším standardním doporučením bude nová řada grafických karet RTX 3000 od společnosti Nvidia nad řadou AMD RX 6000 pro každého, kdo považuje Ray Tracing za důležitý faktor při rozhodování o koupi. To se může a mělo by změnit s budoucí nabídkou AMD, stejně jako vylepšení v oblasti ovladačů a optimalizace her, jak bude čas pokračovat.

Připravované hry, které podporují RTX i DLSS - Obrázek: Nvidia

Závěrečná slova

AMD konečně naskočilo na scénu Ray Tracing zavedením řady grafických karet RX 6000 založené na architektuře RDNA 2. I když neporazili karty řady Nvidia RTX 3000 v přímých srovnávacích testech Ray Tracing, nabídka AMD poskytuje extrémně konkurenceschopný výkon rastrování a působivou hodnotu, která může oslovit hráče, kteří se o Ray Tracing tolik nestarají. AMD je však na dobré cestě ke zlepšení výkonu sledování paprsku pomocí několika klíčových kroků v rychlém sledu.

Přístup společností Nvidia a AMD pro Ray Tracing je poměrně podobný, ale obě společnosti k tomu používají různé hardwarové techniky. Počáteční testování ukázalo, že vyhrazené RT Cores společnosti Nvidia překonávají Ray Ray Accelerators od AMD, které jsou zabudovány do samotných výpočetních jednotek. To nemusí koncového uživatele příliš znepokojovat, ale je důležité ho do budoucna vzít v úvahu, protože vývojáři her nyní stojí před rozhodnutím optimalizovat své funkce RT pro jeden z obou přístupů.