Nvidia RT Cores vs AMD Ray Accelerators - förklaras

Med den första generationen av RTX-grafikkort 2018 introducerade Nvidia världen till en helt ny funktion som skulle förändra spelets landskap som vi känner det. Första generationens grafikkort i RTX 2000-serien baserades på den nya Turing-arkitekturen och gav stöd för realtidsspårning i spel. Ray Tracing hade redan funnits i professionell 3D-animering och syntetiska fält, men Nvidia gav stöd för realtids rendering av spel med Ray Tracing-teknik istället för traditionell rasterisering som skulle vara spelförändrande. Rasterisering är den traditionella tekniken genom vilken spel återges medan Ray Tracing använder komplexa beräkningar för att exakt skildra hur ljus skulle interagera och bete sig i spelmiljön som i verkligheten. Du kan lära dig mer om strålespårning och rasterisering i detta innehåll .



Ray Traced Reflections kan vara den mest iögonfallande tillämpningen av Ray Tracing i spel - Bild: Nvidia

Redan 2018 hade AMD inget svar på Nvidias RTX-serie grafikkort och deras Ray Tracing-funktionalitet. Det röda laget var helt enkelt inte redo för Nvidias innovativa introduktion, och detta gjorde deras bästa erbjudanden i en betydande nackdel jämfört med Team Green. AMD RX 5700 XT var ett fantastiskt grafikkort till priset av 399 $ vilket konkurrerade med prestandan på $ 499 RTX 2070 Super. Det största problemet för AMD var dock det faktum att tävlingen erbjöd en teknik som de inte hade. Detta i kombination med de olika funktioner, DLSS-stöd, stabila drivrutiner och övergripande överlägsen prestanda satte Nvidia-erbjudanden till en betydande fördel när det gäller generationen Turing vs RDNA.



AMD RX 6000-serien med Ray Tracing

Snabbspolning fram till 2020 och AMD har äntligen fört kampen till Nvidias bästa erbjudanden. AMD har inte bara introducerat stöd för Real-Time Ray Tracing i spel, men de har också släppt 3 grafikkort som är extremt konkurrenskraftiga för de bästa grafikkorten från Nvidia. AMD RX 6800, RX 6800 XT och RX 6900 XT kämpar head-to-head med Nvidia RTX 3070, RTX 3080 respektive RTX 3090. AMD är äntligen konkurrenskraftig igen i den övre änden av produktstacken, vilket också är lovande nyheter för konsumenterna.



Raytracing är en av de viktigaste funktionerna som AMD har introducerat denna generation - Bild: AMD



Men saker och ting är inte heller positiva för AMD heller. Även om AMD har infört stöd för realtidsspårning i spel fick deras Ray Tracing-prestanda ett ljummet mottagande från både granskare och allmänna konsumenter. Det är dock förståeligt eftersom detta är AMDs första försök på Ray Tracing så det skulle vara lite orättvist att förvänta sig att de skulle leverera de bästa Ray Tracing-prestanda som finns där i sitt första försök. Det väcker dock frågor om hur AMD: s Ray Tracing-implementering fungerar jämfört med Nvidias implementering som vi såg med Turing och nu Ampere-arkitekturen.

Nvidias svit av RTX Technologies

Den främsta anledningen till att AMDs försök verkar vara överväldigande jämfört med Nvidias är att AMD i huvudsak spelade inhämtning med Nvidia och hade mer eller mindre bara 2 år på sig att utveckla och göra sin implementering av Ray Tracing perfekt. Nvidia har å andra sidan utvecklat den här tekniken mycket längre eftersom de inte hade någon att tävla mot högst upp i produktstacken. Nvidia levererade inte bara Ray Tracing-stöd före AMD, men det hade också ett bättre stöd ekosystem byggt kring tekniken också.

Nvidia designade sin RTX 2000-serie av grafikkort med Ray Tracing som huvudfokus. Detta är tydligt genom hela designen av Turing-arkitekturen. Inte bara multiplicerade Nvidia antalet CUDA-kärnor, utan de lade också till specifika dedikerade Ray Tracing-kärnor som kallas 'RT Cores' som hanterar huvuddelen av de beräkningar som krävs för Ray Tracing. Nvidia utvecklade också en teknik som kallas ”Deep Learning Super Sampling eller DLSS” som är en fantastisk teknik som använder djupinlärning och AI för att utföra uppskalnings- och ombyggnadsuppgifter och också kompensera för prestandaförlusten av Ray Tracing. Nvidia introducerade också dedikerade 'Tensor Cores' i GeForce-seriekort som är utformade för att hjälpa till med Deep Learning och AI-uppgifter som DLSS. Utöver det arbetade Nvidia också med spelstudior för att optimera de kommande Ray Tracing-spelen för den dedikerade Nvidia-hårdvaran så att prestanda kan maximeras.



I Ray Tracing, beter sig ljus i spelet som det skulle göra i verkliga livet - Bild: Nvidia

Nvidias RT-kärnor

RT eller Ray Tracing Cores är Nvidias dedikerade hårdvarukärnor som är särskilt utformade för att hantera den beräkningsarbetsbelastning som är associerad med Real-Time Ray Tracing i spel. Att ha specialkärnor för Ray Tracing avlaster mycket arbetsbelastning från CUDA-kärnorna som är dedikerade till standardåtergivning i spel så att prestanda inte påverkas för mycket av mättnaden av kärnanvändningen. RT Cores offrar mångsidighet och implementerar hårdvara med en speciell arkitektur för speciella beräkningar eller algoritmer för att uppnå snabbare hastigheter.

De vanligaste Ray Tracing-accelerationsalgoritmerna som är allmänt kända är BVH och Ray Packet Tracing och det schematiska diagrammet för Turing-arkitektur nämner också BVH (Bounding Volume Hierarchy) Transversal. RT Core är utformad för att identifiera och påskynda de kommandon som gäller Ray Traced-rendering i spel.

RT Core förklaras - Bild: Nvidia

Enligt Nvidias tidigare Senior GPU-arkitekt Yubo Zhang:

”[Översatt] RT-kärnan lägger i huvudsak till en dedikerad pipeline (ASIC) till SM för att beräkna strål- och triangelkorsningen. Den kan komma åt BVH och konfigurera vissa L0-buffertar för att minska fördröjningen av BVH- och triangeldataåtkomst. Begäran görs av SM. Instruktionen utfärdas och resultatet returneras till SM: s lokala register. Den sammanflätade instruktionen och andra aritmetik- eller minnesinstruktioner kan vara samtidigt. Eftersom det är en ASIC-specifik kretslogik kan prestanda / mm2 ökas med en storleksordning jämfört med användningen av skuggkod för korsningsberäkning. Även om jag har lämnat NV var jag involverad i utformningen av Turing-arkitekturen. Jag var ansvarig för färgning med variabel hastighet. Jag är glad att se släppet nu. ”

Nvidia säger också i Turing Architecture White Paper att RT Cores arbetar tillsammans med avancerad denoising-filtrering, en mycket effektiv BVH-accelerationsstruktur som utvecklats av NVIDIA Research och RTX-kompatibla API: er för att uppnå strålspårning i realtid på en enda Turing GPU. RT-kärnor korsar BVH autonomt, och genom att påskynda genomkörning och stråle / triangelkorsningstest laddar de bort SM, så att den kan hantera ett annat topp-, pixel- och beräkningsskuggningsarbete. Funktioner som BVH-byggnad och ommontering hanteras av föraren, och strålgenerering och skuggning hanteras av applikationen genom nya typer av skuggare. Detta frigör SM-enheterna för att göra annat grafiskt och beräkningsarbete.

AMDs Ray Accelerators

AMD har gått in i Ray Tracing-loppet med sin RX 6000-serie och med det har de också introducerat några nyckelelement till RDNA 2 arkitektonisk design som hjälper till med den här funktionen. För att förbättra Ray Tracing-prestandan hos AMD: s RDNA 2-grafikprocessorer har AMD införlivat en Ray Accelerator-komponent i sin centrala Compute Unit Design. Dessa strålacceleratorer ska öka effektiviteten hos standarddatorenheterna i beräkningsarbetsbelastningarna relaterade till Ray Tracing.

Mekanismen bakom funktionen för Ray Accelerators är fortfarande relativt vag men AMD har gett viss inblick i hur dessa element ska fungera. Enligt AMD har dessa strålacceleratorer ett uttalat syfte att korsa BVH-strukturen (Bounded Volume Hierarchy) och effektivt bestämma korsningar mellan strålar och lådor (och så småningom trianglar). Designen stöder fullt ut DirectX Ray Tracing (Microsofts DXR), som är industristandarden för PC-spel. Utöver det använder AMD en datorbaserad denoiser för att rensa upp de spekulära effekterna av strålspårade scener snarare än att förlita sig på specialbyggd hårdvara. Detta kommer troligen att lägga extra tryck på de nya Compute Units kapaciteter med blandad precision.

Ray Accelerators Explained - Bild: AMD

Ray Accelerators har också möjlighet att bearbeta fyra avgränsade volymboxkorsningar eller en triangelkorsning per sekund, vilket är mycket snabbare än att göra en Ray Traced-scen utan dedikerad hårdvara. Det är en stor fördel med AMDs strategi att RDNA 2s RT Accelerators kan interagera med kortets Infinity Cache. Det är möjligt att lagra ett stort antal avgränsade volymstrukturer samtidigt i cachen, så viss belastning kan tas bort från datahantering och minnesläsceller.

Nyckelskillnad

Den största skillnaden som är omedelbart uppenbar när man jämför RT-kärnorna och strålacceleratorerna är att medan båda utför sina funktioner ganska lika, är RT-kärnorna dedikerade separata hårdvarukärnor som har en enstaka funktion, medan strålacceleratorerna är en del av standard Compute Unit-strukturen i RDNA 2-arkitekturen. Inte bara det, Nvidias RT Cores är på sin andra generation med Ampere med många tekniska och arkitektoniska förbättringar under huven. Detta gör Nvidias RT Core-implementering till en mycket effektivare och kraftfullare Ray Tracing-metod än AMD: s implementering med Ray Accelerators.

Eftersom det finns en enda Ray Accelerator inbyggd i varje beräkningsenhet, får AMD RX 6900 XT 80 Ray Accelerators, 6800 XT får 72 Ray Accelerators och RX 6800 får 60 Ray Accelerators. Dessa siffror är inte direkt jämförbara med Nvidias RT Core-nummer eftersom de är dedikerade kärnor byggda med en enda funktion i åtanke. RTX 3090 får 82 2ndGen RT-kärnor, RTX 3080 får 60 2ndGen RT-kärnor och RTX 3070 får 46 2ndGen RT-kärnor. Nvidia har också separata Tensor Cores i alla dessa kort som hjälper till med maskininlärning och AI-applikationer som DLSS, som du kan lära dig mer om i den här artikeln .

Det finns en Ray Accelerator inbyggd i varje beräkningsenhet i RDNA 2 - Bild: AMD

Framtida optimering

Det är svårt att säga vid denna tidpunkt vad framtiden har för Ray Tracing för Nvidia och AMD, men man kan göra några utbildade gissningar genom att analysera den aktuella situationen. I skrivande stund har Nvidia en ganska betydande ledning i Ray Tracing-prestanda jämfört med AMDs erbjudanden. AMD har gjort en imponerande start för RT, men de är fortfarande två år efter Nvidia när det gäller forskning, utveckling, support och optimering. Nvidia har låst in de flesta Ray Tracing-titlar just nu 2020 för att använda Nvidias dedikerade hårdvara bättre än vad AMD har satt ihop. Detta kombinerat med det faktum att Nvidias RT-kärnor är mer mogna och kraftfullare än AMDs Ray Accelerators, sätter AMD i en nackdel när det gäller den nuvarande Ray Tracing-situationen.

AMD slutar dock definitivt inte här. AMD har redan meddelat att de arbetar med ett AMD-alternativ till DLSS vilket är en enorm hjälp för att förbättra Ray Tracing-prestanda. AMD arbetar också med spelstudior för att optimera kommande spel för deras hårdvara, vilket visas i titlar som GodFall och Dirt 5 där AMDs RX 6000-seriekort fungerar förvånansvärt bra. Därför kan vi förvänta oss att AMDs Ray Tracing-stöd blir bättre och bättre med kommande titlar och utveckling av kommande tekniker som DLSS Alternative.

Med detta sagt är Nvidias RTX Suite i skrivande stund alldeles för kraftfullt att ignorera för den som letar efter seriös Ray Tracing-prestanda. Vår standardrekommendation är den nya RTX 3000-serien av grafikkort från Nvidia över AMDs RX 6000-serie för alla som anser att Ray Tracing är en viktig faktor i köpbeslutet. Detta kan och bör förändras med AMDs framtida erbjudanden, liksom förbättringar av både drivrutiner och speloptimering med tiden.

Kommande spel som stöder både RTX och DLSS - Bild: Nvidia

Slutord

AMD har äntligen hoppat på Ray Tracing-scenen med introduktionen av deras RX 6000-serie grafikkort baserat på RDNA 2-arkitekturen. Även om de inte slår Nvidias RTX 3000-kort i direkta Ray Tracing-riktmärken, erbjuder AMD-erbjudandena extremt konkurrenskraftiga rasteriseringsprestanda och imponerande värde som kan tilltala spelare som inte bryr sig om Ray Tracing lika mycket. AMD är dock på god väg att förbättra Ray Tracing-prestanda med flera viktiga steg i snabb följd.

Metoden som Nvidia och AMD använde för Ray Tracing är ganska lika men båda företagen använder olika hårdvarutekniker för att göra det. Inledande testning har visat att Nvidias dedikerade RT-kärnor överträffar AMDs Ray Accelerators som är inbyggda i själva Compute Units. Det här kanske inte är ett stort bekymmer för slutanvändaren, men det är en viktig sak att tänka på i framtiden eftersom spelutvecklare nu står inför ett beslut att optimera sina RT-funktioner för en av båda metoderna.