Ottimizzazione Ray Tracing su RDNA2, con 2 linee di codice +22%

by Patrick Grioni
0 comment 318 views

Che lo spazio di manovra consentito dalle nuove architetture AMD RDNA2 fosse ampio, è una evidenza incontestabile che abbiamo segnalato fin dal primo incontro con RX 6800 XT: c’è chi ha enfatizzato l’assunto di un generale livello di performance simile, o inferiore, a una RTX 2060 in modalità Ray Tracing citando più volte Minecraft come paradigma, riteniamo però che la questione meriti un diverso approfondimento.

L’approccio che Nvidia ha avuto nell’implementazione della tecnologia Hybrid Ray (calcoli raster combinati con i calcoli delle intersezioni Ray), è frutto di un naturale setting atto a valorizzare le unità di calcolo di Turing e Ampere, modellando allo stesso tempo il mercato.

Evidenza ne è l’API Vulkan che inizialmente per l’implementazione di tali risultati si è trovata a utilizzare le estensioni proprietarie VKray, tanto che titoli come Wolfenstein: Youngblood non sono e non saranno mai compatibili con Gpu Amd.

Proprio per questo i primi esperimenti sotto DXR di RDNA2 hanno sofferto di una evidentissima mancanza di ottimizzazione, diremmo un supporto base senza spingere ne lato drivers ne lato codice le potenzialità delle unità RA, che, con ogni probabilità, in gran parte dei casi stazionavano in modalità Idle.

L’utente Philipp Munkes su twitter ha svolto un interessante esperimento di ottimizzazione e studio delle dinamiche, tanto che cambiando 2 righe di codice e passando da wave64 (il settaggio base) a wave32 ha ottenuto un beneficio di performance fino a un 22%, constatando come in 2 test su 5 RX 6900 XT superasse anche RTX 3090.

RDNA 2 sembra andare particolarmente bene, infatti, in ambito di geometria procedurale, proprio perchè utilizza le unità compute per calcolare le intersezioni BVH-ray mentre Nvidia pare limitata dal numero di RT cores.

Questi ultimi, soprattutto su Ampere (ed è il principale vantaggio da Turing) , invece, paiono particolarmente efficienti nelle intersezioni triangle-ray, in forma doppia rispetto alla passata generazione di Gpu Nvidia.
Ma anche a livello di Denoising i due approcci sono differenti, da una parte si utilizzano i tensor cores, dall’altra Fidelity Fx Denoiser che sostanzialmente si affida anch’esso ai compute, con forte enfasi anche su Stochastic Screen Space Reflections a integrazione del risultato.

Sostanzialmente, quindi, le varie implementazioni si valuteranno con l’ottimizzazione e le collaborazioni con i vari studi di sviluppo e il supporto a livello di engine 3D: la verità è che sono due strutture differenti che fanno la stessa cosa ma con punti e ambiti di forza-debolezza non confrontabili.

Il prossimo Resident Evil Village vedrà una collaborazione più stretta con AMD proprio per spingere il livello grafico e visivo sfruttando le prerogative di RX 6800 XT e potrebbe essere il primo benchmark delle potenzialità di RA, mentre probabilmente sarà Far Cry 6, invece, il prodotto che sfrutterà meglio tutta la suite Fidelity FX (Ray Tracing, Contrast Adaptive Sharpening, Variable Rate Shading, Hybrid SSR).

Potrebbe interessarti anche

Iscriviti
Notificami
guest
0 Commenti
Inline Feedbacks
Vedi tutti i commenti