Intel XeSS, la tecnologia per ottenere più FPS nelle GPU gaming

Intel XESS

Gli algoritmi di super risoluzione eseguiti dalle GPU di gioco sono diventati la punta di diamante di diversi giochi GPU produttori. Con l'ingresso di Intel a questo mercato non hanno voluto essere lasciati indietro e hanno sviluppato la propria controparte al NVIDIA DLSS e il AMD FSR sotto il nome di Intel Xe Super Sampling. Come funziona l'Intel XeSS e in cosa differisce dai suoi rivali?

Insieme alla presentazione definitiva di quello che era precedentemente noto come Xe-HPG e che è stato ribattezzato ARC Alchemist. Intel non ci ha parlato solo della sua nuova generazione di architetture grafiche, ma dell'impegno per l'intelligenza artificiale per il futuro, sia in CPU e GPU. Nel caso specifico delle loro GPU, hanno sviluppato un algoritmo chiamato Intel XeSS, che arriva a competere con l'FSR di AMD e il DLSS di NVIDIA. Dove coincidono negli obiettivi, ma non nel modo di lavorare tra i tre algoritmi.

Perché abbiamo bisogno di algoritmi di super risoluzione?

Pajaro Superrisoluzione

Quando si elabora la grafica, a ogni vertice, frammento o pixel viene assegnato almeno un thread di esecuzione sulla GPU e si deve tenere conto che il numero di pixel è molto maggiore del numero di vertici nella scena. Ciò significa che quando si aumenta la risoluzione, ciò che accade è che si finisce per aumentare allo stesso modo la quantità di istruzioni da eseguire all'interno della GPU, così come i suoi dati, e quindi aumenta anche la larghezza di banda.

Il problema è che questo implica avere una GPU di dimensioni molto maggiori, non solo per l'aumento delle diverse unità, ma anche per il fatto che richiedendo una maggiore larghezza di banda richiede anche controller di memoria più complessi. Non dimentichiamo che questi sono posti sul perimetro esterno di qualsiasi processore e quindi hanno a che fare con le sue dimensioni. E soprattutto non possiamo dimenticare l'elevato consumo delle memorie utilizzate nelle schede grafiche da gioco.

Algoritmi a super risoluzione come AMD FSR, Intel Xess e NVIDIA DLSS cercano di risolvere questo problema. Si affidano all'aumento dell'hardware di una percentuale minuscola, inferiore al 10%, al fine di ottenere prestazioni che altrimenti richiederebbero tradizionalmente il raddoppio delle dimensioni di una GPU. A tutto questo non va dimenticato il Ray Tracing, il cui algoritmo anche facendo uso di strutture di accelerazione come il BVH lavora a livello di pixel, per questo sono stati adottati algoritmi di super risoluzione come parte essenziale della grafica in tempo reale.

Che cos'è Intel XeSS?

Qualità Intel Xess

Intel sta per offrire due versioni di Intel XeSS e quindi due algoritmi differenti. In entrambi i casi si tratta di un algoritmo che si basa su Deep Learning e computer vision e quindi viene utilizzata una rete neurale di inferenza che predice l'immagine ad una risoluzione più alta, con più pixel, da una risoluzione più bassa. e quindi meno pixel.

La prima variante utilizza il registro SIMD over o SWAR che hanno alcune GPU, questo meccanismo consiste nel fatto che l'ALU a 32 bit può essere suddivisa in due ALU a 16 bit che eseguono la stessa istruzione o 4 da 8 bit. Bene, il formato DP4A consiste nel raggruppare 4 operandi a 8 bit in un registro a 32 bit. Quindi una delle varianti XeSS sarà in grado di funzionare sulle GPU integrate di Intel, così come su qualsiasi GPU che supporti questo formato, poiché Intel la renderà open source.

La seconda variante di Intel XeSS invece è più complessa, in quanto funziona utilizzando le unità Tensor di Intel Arc chiamate XMX, ma non funziona nelle GPU NVIDIA con Tensor Core. La spiegazione di Intel non è altro che che NVIDIA tiene sotto chiave il modo in cui funzionano i Tensor Core della sua GPU, l'uso di unità XMX e la capacità di eseguire calcoli a matrice estremamente veloci richiesti dalle reti convoluzionali. Poiché non funziona su GPU AMD e le GPU AMD attualmente mancano di tali unità, la seconda variante sarebbe esclusivamente per GPU Intel.

In che modo Intel XeSS è diverso dalle soluzioni di AMD e NVIDIA?

Temporale Intel XeSS

In effetti, sarebbe tra i due mondi, poiché nonostante sia un soluzione basata sul Deep Learning come NVIDIA, da Intel hanno affermato di esserlo andando a pubblicare il codice della sua attuazione come ha fatto AMD con la sua FidelityFX Super Resolution. Così gli sviluppatori possono applicarlo più facilmente nei loro giochi e applicazioni. È una strategia che nel caso dell'algoritmo AMD ha permesso la sua implementazione oltre quanto previsto, come emulatori di vecchie console, Linux applicazioni e persino giochi che non avrebbero ricevuto una patch di questo tipo.

Come NVIDIA DLSS, tiene conto anche dei dati di temporalità, che si ottengono dalle informazioni dei frame precedenti, questo è qualcosa che l'AMD FSR non fa, poiché la soluzione rossa prende solo le informazioni del frame corrente. Non dimentichiamo nemmeno che l'algoritmo AMD non si basa sull'intelligenza artificiale e quindi non richiede allenamento mentre quello di NVIDIA lo fa. Bene, Intel ha affermato che nemmeno XeSS lo fa, ed è qui che le cose si fanno interessanti.

Perché XeSS non ha bisogno di formazione?

Banca dati

Una delle cose che differenzia XeSS da NVIDIA DLSS è che il primo non richiede formazione . Nel processo di formazione abbiamo due elementi che lavorano contemporaneamente, il primo è incaricato di prevedere e il secondo di supervisionare. Quando una previsione della rete neurale convoluzionale non è corretta, l'hardware di supervisione restituisce la risposta negativa e la rete neurale viene affinata sempre di più finché non impara a fare le previsioni corrette.

In un videogioco in cui non viene ripetuto un singolo fotogramma, è molto più difficile da fare che in un film in cui ci sono sempre gli stessi fotogrammi. Ecco perché ciò che di solito si fa è addestrare la rete neurale con la supervisione. Che consiste nell'eseguire il gioco ad alta risoluzione in un sistema, ridimensionare l'immagine in un processo che aggiunge rumore e da questi dati creare una rete neurale nel sistema che dovrà fare l'inferenza in modo che possa generare l'immagine più in alto risoluzione.

Intel afferma che con XeSS non è necessaria alcuna formazione e quindi non è necessaria alcuna supervisione da parte di un sistema esterno. La realtà di questa affermazione non è altro che il processo di formazione viene eseguito all'interno dell'hardware della GPU invece di essere eseguito su hardware remoto. Per questo, ciò che fa la GPU è eseguire il gioco in due istanze simultanee contemporaneamente, una che funge da supervisore e nell'altra la rete neurale è sintonizzata. Ciò consente a coloro che implementano Intel Xess nei propri giochi e applicazioni di mettere a punto l'algoritmo e di non dipendere da server esterni.

Gli ingredienti segreti che Intel ha integrato nelle sue GPU per XeSS

Per accelerare la formazione, Intel includerà una serie di unità aggiuntive nella GPU , come il Sottocampionatore , l'unità per ottenere la stessa immagine a una risoluzione inferiore e quella che calcola la perdita di qualità del segnale. Per non dimenticare il retropropagatore , che è fondamentale durante il processo di addestramento dalla GPU stessa. Al momento non sappiamo dove siano queste unità per addestrare la rete neurale convoluzionale, ma supponiamo che siano un'unità di supporto a parte il motore di rendering, ma all'interno della GPU stessa.

Gli algoritmi di super-risoluzione usano spesso algoritmi di supercampionamento nel processo per ottenere l'immagine a una risoluzione più elevata. Alcuni utilizzano l'interpolazione bicubica, mentre altri come l'FSR utilizzano una variante Lanczos, sebbene tutti funzionino sulle unità Shader della GPU e quindi finiscano per declassarli. Intel avrebbe incluso le unità di ridimensionamento , che sarebbe in grado di eseguire automaticamente uno o più algoritmi di supercampionamento e libererebbe le unità Xe Core SIMD da questo compito, consentendo loro di essere utilizzate anche altrove dove sono necessarie.

Quindi, in conclusione, Intel XeSS aggiunge una serie di hardware aggiuntivo che fino ad ora era senza precedenti nelle GPU. Non solo per velocizzare questi algoritmi, ma anche per aumentare la compatibilità e facilitarne l'implementazione nei diversi giochi in commercio. Che si tratti delle ultime notizie o dei giochi con qualche anno alle spalle. Quindi si può dire che Intel con l'XeSS ha preso buona nota delle carenze e dei limiti dei suoi rivali.