Nvidia RT Cores vs. AMD Ray Accelerators: explicat

Amb la primera generació de targetes gràfiques RTX el 2018, Nvidia va introduir al món una nova característica que suposadament canviava el panorama dels jocs tal com el coneixem. Les targetes gràfiques de la primera generació de la sèrie RTX 2000 es basaven en la nova arquitectura de Turing i aportaven suport per al seguiment de raigs en temps real en els jocs. Ray Tracing ja existia en els camps de l'animació 3D professional i els camps sintètics, però Nvidia va proporcionar suport per a la representació en temps real de jocs mitjançant la tecnologia Ray Tracing en lloc de la rasterització tradicional que suposadament canviava de joc. La rasterització és la tècnica tradicional a través de la qual es representen els jocs, mentre que Ray Tracing utilitza càlculs complexos per representar amb precisió com la llum interactuaria i es comportaria a l’entorn del joc com ho faria a la vida real. Podeu obtenir més informació sobre el traçat i la ràsterització de raigs en aquesta peça de contingut .



Ray Traced Reflections pot ser l’aplicació més atractiva de Ray Tracing en els jocs: imatge: Nvidia

El 2018, AMD no tenia resposta a la sèrie de targetes gràfiques RTX de Nvidia i a la seva funcionalitat Ray Tracing. El Red Team simplement no estava preparat per a la introducció innovadora de Nvidia i això va suposar un desavantatge important de les seves ofertes principals en comparació amb Team Green. L’AMD RX 5700 XT era una fantàstica targeta gràfica pel preu de 399 dòlars que rivalitzava amb el rendiment del RTX 2070 Super de 499 dòlars. El problema més gran per a AMD, però, era el fet que la competència oferia una tecnologia que no posseïen. Això, juntament amb el conjunt de funcions diverses, el suport DLSS, els controladors estables i el rendiment global superior, han posat les ofertes Nvidia en un avantatge significatiu quan es va tractar de la generació de Turing contra RDNA.



Sèrie AMD RX 6000 amb Ray Tracing

Avança ràpidament fins al 2020 i AMD finalment ha portat la lluita a les millors ofertes de Nvidia. AMD no només ha introduït el suport per al seguiment de raigs en temps real als jocs, sinó que també ha llançat 3 targetes gràfiques extremadament competitives per a les millors targetes gràfiques de Nvidia. L’AMD RX 6800, l’RX 6800 XT i l’RX 6900 XT lluiten cara a cara amb els Nvidia RTX 3070, RTX 3080 i RTX 3090 respectivament. AMD finalment torna a ser competitiva a l’extrem superior de la pila de productes, que també és una promesa per als consumidors.



Raytracing és una de les característiques clau que AMD ha introduït aquesta generació: imatge: AMD



Tot i això, les coses tampoc no són del tot positives per a AMD. Tot i que AMD ha introduït suport per al seguiment de raigs en temps real en els jocs, el seu rendiment de Ray Tracing va rebre una recepció tèbia tant dels revisors com dels consumidors en general. Tot i que és comprensible, ja que es tracta del primer intent d’AMD de Ray Tracing, de manera que seria una mica injust esperar que oferissin el millor rendiment de Ray Tracing en el seu primer intent. Tot i això, planteja preguntes sobre la manera com funciona la implementació de Ray Tracing d’AMD en comparació amb la implementació de Nvidia que vam veure amb l’arquitectura Turing i ara Ampere.

El paquet de tecnologies RTX de Nvidia

El principal motiu pel qual l’intent d’AMD sembla ser decebedor en comparació amb el de Nvidia és que AMD jugava bàsicament a posar-se al dia amb Nvidia i tenia més o menys només 2 anys de temps per desenvolupar i perfeccionar la seva implementació de Ray Tracing. Nvidia, d'altra banda, ha estat desenvolupant aquesta tecnologia durant molt més temps, ja que no tenia ningú amb qui competir a la part superior de la pila de productes. Nvidia no només va proporcionar suport Ray Tracing abans d’AMD, sinó que també tenia un ecosistema de suport millor construït al voltant de la tecnologia.

Nvidia va dissenyar la seva sèrie de targetes gràfiques RTX 2000 amb Ray Tracing com a focus principal. Això és evident en tot el disseny de la pròpia arquitectura de Turing. Nvidia no només va multiplicar el nombre de nuclis CUDA, sinó que també van afegir nuclis específics dedicats al seguiment de raigs, coneguts com a “nuclis RT”, que gestionen la major part dels càlculs necessaris per al seguiment de raigs. Nvidia també va desenvolupar una tecnologia coneguda com a 'Deep Learning Super Sampling o DLSS', que és una tecnologia fantàstica que utilitza l'aprenentatge profund i la intel·ligència artificial per realitzar tasques d'escalat i reconstrucció i també compensar la pèrdua de rendiment de Ray Tracing. Nvidia també va introduir 'Tensor Cores' dedicat a les targetes de la sèrie GeForce que estan dissenyades per ajudar en l'aprenentatge profund i tasques d'IA com DLSS. A més, Nvidia també va treballar amb estudis de jocs per optimitzar els propers jocs de Ray Tracing per al maquinari Nvidia dedicat, de manera que es pugui maximitzar el rendiment.



A Ray Tracing, la llum es comporta al joc com ho faria a la vida real: imatge: Nvidia

Nvidia’s RT Cores

RT o Ray Tracing Cores són els nuclis de maquinari dedicats a Nvidia dissenyats específicament per gestionar la càrrega de treball computacional que s’associa amb el seguiment de raigs en temps real en els jocs. El fet de disposar de nuclis especialitzats per a Ray Tracing descarrega molta càrrega de treball dels nuclis CUDA que es dediquen a la representació estàndard dels jocs de manera que el rendiment no es vegi afectat massa per la saturació de la utilització del nucli. RT Cores sacrifica la versatilitat i implementa maquinari amb una arquitectura especial per a càlculs especials o algorismes per aconseguir velocitats més ràpides.

Els algoritmes d’acceleració de traçat de raigs més comuns que es coneixen habitualment són el traçat de paquets de raigs BVH i el diagrama esquemàtic de l’arquitectura de Turing també esmenta la transversal BVH (Bounding Volume Hierarchy). El RT Core està dissenyat per identificar i accelerar les ordres relatives a la representació de Ray Traced en els jocs.

El nucli RT explicat - Imatge: Nvidia

Segons l'ex arquitecte sènior de GPU de Nvidia, Yubo Zhang:

'[Traduït] El nucli RT afegeix essencialment una canonada dedicada (ASIC) al SM per calcular la intersecció de raigs i triangles. Pot accedir al BVH i configurar alguns buffers L0 per reduir el retard de l'accés a les dades del BVH i del triangle. La sol·licitud la fa SM. La instrucció s’emet i el resultat es torna al registre local del SM. La instrucció entrellaçada i altres instruccions IO de càlcul o memòria poden ser simultànies. Com que és una lògica de circuit específica de l'ASIC, el rendiment / mm2 es pot augmentar en un ordre de magnitud en comparació amb l'ús del codi de sombra per al càlcul de la intersecció. Tot i que he deixat la NV, vaig participar en el disseny de l'arquitectura de Turing. Vaig ser responsable de la coloració de taxa variable. Em fa il·lusió veure el llançament ara ”.

Nvidia també afirma al Llibre blanc sobre arquitectura de Turing que RT Cores treballa juntament amb un avançat filtrat de denoising, una estructura d’acceleració BVH d’alta eficiència desenvolupada per NVIDIA Research i APIs compatibles amb RTX per aconseguir el seguiment de raigs en temps real en una sola GPU de Turing. Els nuclis RT travessen la BVH de forma autònoma i, mitjançant l’acceleració de les proves de travessia i intersecció de raigs / triangles, descarreguen l’SM, cosa que li permet manejar un altre vèrtex, píxel i calcular el treball d’ombrejat. Funcions com la construcció i el muntatge de BVH són gestionades pel controlador, i l'aplicació gestiona la generació i l'ombrejat de raigs mitjançant nous tipus de shaders. Això allibera les unitats SM per fer altres treballs gràfics i computacionals.

Ray Accelerators d’AMD

AMD ha entrat a la carrera de Ray Tracing amb la seva sèrie RX 6000 i, amb això, també han introduït alguns elements clau en el disseny arquitectònic RDNA 2 que ajuden a aquesta funció. Per millorar el rendiment de Ray Tracing de les GPU RDNA 2 d’AMD, AMD ha incorporat un component Ray Accelerator al disseny bàsic de la unitat de càlcul. Es suposa que aquests acceleradors de raigs augmentaran l’eficiència de les unitats de càlcul estàndard en les càrregues de treball computacionals relacionades amb el traçat de raigs.

El mecanisme darrere del funcionament dels acceleradors de raigs encara és relativament imprecís, tot i que AMD ha proporcionat una idea del funcionament d’aquests elements. Segons AMD, aquests acceleradors de raigs tenen un propòsit express de recórrer l'estructura de la jerarquia del volum delimitat (BVH) i determinar de manera eficient interseccions entre raigs i caixes (i, finalment, triangles). El disseny és totalment compatible amb DirectX Ray Tracing (DXR de Microsoft), que és l’estàndard de la indústria per a jocs per a PC. A més, AMD utilitza un denoiser basat en Compute per netejar els efectes especulars de les escenes traçades per raigs en lloc de confiar en maquinari específic. Probablement, això exercirà una pressió addicional sobre les capacitats de precisió mixta de les noves unitats de càlcul.

Els acceleradors de raigs explicats - Imatge: AMD

Els acceleradors de raigs també són capaços de processar quatre interseccions de caixes de volum delimitades o una intersecció de triangle per segon, que és molt més ràpida que representar una escena Ray Traced sense maquinari dedicat. L’enfocament d’AMD té un gran avantatge: els acceleradors RT de RDNA 2 poden interactuar amb la memòria cau infinita de la targeta. És possible emmagatzemar un gran nombre d'estructures de volum limitades simultàniament a la memòria cau, de manera que es pot treure una mica de càrrega de les cel·les de gestió de dades i lectura de memòria.

Diferència clau

La diferència més gran que s’observa immediatament en comparar els nuclis RT i els acceleradors de raigs és que, si bé ambdós realitzen les seves funcions de manera similar, els nuclis RT tenen nuclis de maquinari separats que tenen una funció singular, mentre que els acceleradors de raigs formen part de l'estructura estàndard de la unitat de càlcul a l'arquitectura RDNA 2. No només això, RT Cores de Nvidia arriba a la seva segona generació amb Ampere amb moltes millores tècniques i arquitectòniques sota el capó. Això fa que la implementació RT Core de Nvidia sigui un mètode Ray Tracing molt més eficaç i potent que la implementació d’AMD amb els Ray Accelerators.

Com que hi ha un únic accelerador de raigs integrat a totes les unitats de càlcul, l’AMD RX 6900 XT obté 80 acceleradors de raigs, el 6800 XT obté 72 acceleradors de raigs i el RX 6800 obté 60 acceleradors de raigs. Aquests números no són directament comparables als números RT Core de Nvidia, ja que són nuclis dedicats construïts pensant en una sola funció. El RTX 3090 obté 82 2ndNuclis Gen RT, el RTX 3080 obté 60 2ndGen RT Cores i RTX 3070 obtenen 46 2ndGen RT Cores. Nvidia també té nuclis tensor separats en totes aquestes targetes que ajuden a l’aprenentatge automàtic i a les aplicacions d’intel·ligència artificial com DLSS, que podeu obtenir més informació sobre en aquest article .

Hi ha un accelerador de raigs integrat a totes les unitats de càlcul de RDNA 2: imatge: AMD

Optimització del futur

És difícil dir en aquest moment quin és el futur de Ray Tracing per a Nvidia i AMD, però es poden fer algunes suposicions educades analitzant la situació actual. En el moment de l’escriptura, Nvidia té un avantatge bastant significatiu en el rendiment de Ray Tracing en comparació directa amb les ofertes d’AMD. Tot i que AMD ha fet un inici impressionant per a RT, encara estan 2 anys darrere de Nvidia en termes de recerca, desenvolupament, assistència i optimització. Nvidia ha bloquejat la majoria de títols de Ray Tracing ara mateix el 2020 per utilitzar el maquinari dedicat de Nvidia millor del que AMD ha reunit. Això, combinat amb el fet que els nuclis RT de Nvidia són més madurs i més potents que els Ray Accelerators d’AMD, posa AMD en desavantatge quan es tracta de la situació actual de Ray Tracing.

Tot i això, AMD definitivament no s’atura aquí. AMD ja ha anunciat que treballa en una alternativa AMD a DLSS, que és una ajuda massiva per millorar el rendiment de Ray Tracing. AMD també treballa amb estudis de jocs per optimitzar els propers jocs per al seu maquinari, que es mostra en títols com GodFall i Dirt 5 on les cartes de la sèrie RX 6000 d’AMD tenen un rendiment sorprenent. Per tant, podem esperar que el suport de Ray Tracing d’AMD millori cada cop amb els propers títols i el desenvolupament de tecnologies pròximes com l’alternativa DLSS.

Dit això, a partir del moment d’escriure la RTX Suite de Nvidia és massa poderosa per ignorar-la per a qualsevol persona que busqui un rendiment seriós de Ray Tracing. La nostra recomanació estàndard serà la nova sèrie de targetes gràfiques RTX 3000 de Nvidia sobre la sèrie RX 6000 d’AMD per a qualsevol persona que consideri Ray Tracing un factor important en la decisió de compra. Això podria i hauria de canviar amb les futures ofertes d’AMD, així com amb les millores tant en els controladors com en l’optimització del joc a mesura que passi el temps.

Propers jocs compatibles amb RTX i DLSS - Imatge: Nvidia

Paraules finals

AMD finalment ha saltat a l’escena Ray Tracing amb la introducció de la seva sèrie de targetes gràfiques RX 6000 basades en l’arquitectura RDNA 2. Tot i que no superen les targetes de la sèrie RTX 3000 de Nvidia en els punts de referència directes de Ray Tracing, les ofertes AMD ofereixen un rendiment de rasterització extremadament competitiu i un valor impressionant que pot agradar als jugadors que no es preocupen tant per Ray Tracing. No obstant això, AMD està en el seu camí per millorar el rendiment de Ray Tracing amb diversos passos clau en ràpida successió.

L'enfocament adoptat per Nvidia i AMD per Ray Tracing és bastant similar, però ambdues empreses utilitzen tècniques de maquinari diferents per fer-ho. Les proves inicials han demostrat que els nuclis RT dedicats de Nvidia superen els acceleradors de raigs d’AMD integrats a les unitats de càlcul. Pot ser que això no sigui una preocupació per a l’usuari final, però és una cosa important a tenir en compte per al futur, ja que els desenvolupadors de jocs s’enfronten ara a la decisió d’optimitzar les seves funcions de RT per a qualsevol dels dos enfocaments.