Codifica video testata: le GPU AMD sono ancora in ritardo rispetto a Nvidia e Intel (aggiornato)

Notizia

CasaCasa / Notizia / Codifica video testata: le GPU AMD sono ancora in ritardo rispetto a Nvidia e Intel (aggiornato)

Oct 22, 2023

Codifica video testata: le GPU AMD sono ancora in ritardo rispetto a Nvidia e Intel (aggiornato)

AVC, HEVC, and AV1 encoding put to the test The best graphics cards aren't just

Codifiche AVC, HEVC e AV1 messe alla prova

Le migliori schede grafiche non sono solo per giocare. La formazione e l'inferenza dell'intelligenza artificiale, le applicazioni professionali, la codifica e decodifica video possono trarre vantaggio dall'avere una GPU migliore. Sì, i giochi ricevono ancora la massima attenzione, ma ci piace considerare anche gli altri aspetti. Qui ci concentreremo specificamente sulle prestazioni e sulla qualità della codifica video che puoi aspettarti da varie generazioni di GPU. In generale, i blocchi di codifica/decodifica video per ogni generazione di GPU funzioneranno tutti allo stesso modo, con piccole variazioni a seconda velocità di clock per il blocco video. Abbiamo controllato come esempio RTX 3090 Ti e RTX 3050 - le GPU più veloci e lente della generazione Ampere RTX serie 30 di Nvidia - e non abbiamo riscontrato alcuna differenza. Per fortuna, questo ci lascia con meno GPU da considerare di quelle altrimenti necessarie. Testeremo RTX 4090, RTX 3090 e GTX 1650 di Nvidia del team green, che copre Ada Lovelace, Turing/Ampere (funzionalmente identiche) e Codificatori video dell'era Pascal. Per Intel, stiamo esaminando le GPU desktop, con l'Arc A770 e l'UHD 770 integrato. AMD risulta avere la diffusione più ampia, almeno in termini di velocità, quindi abbiamo finito per testare RX 7900 XTX, RX 6900 XT, RX 5700 XT, RX Vega 56 e RX 590. Volevamo anche verificare come si comportano gli encoder GPU rispetto alla codifica software basata su CPU, e per questo abbiamo utilizzato il Core i9-12900K e il Core i9-13900K.Aggiornamento del 09/03/2013: I punteggi VMAF iniziali sono stati calcolati all'indietro, il che significa che abbiamo utilizzato il video "distorto" come video "di riferimento" e viceversa. Ciò, inutile dirlo, ha portato a punteggi VMAF molto più alti del previsto! Da allora abbiamo ricalcolato tutti i punteggi VMAF. Se te lo stai chiedendo, è un'operazione molto impegnativa dal punto di vista computazionale e richiede circa 30 minuti per GPU su un Core i9-13900K. La buona notizia è che i nostri grafici ora sono corretti. La cattiva notizia (a parte i risultati inizialmente errati pubblicati) è che abbiamo eliminato il file torrent iniziale e lo stiamo aggiornando con un nuovo file che include i log dei nuovi calcoli VMAF. Inoltre, i punteggi sono diminuiti, quindi se pensavi che la codifica 4K a 60 fps a 16 Mbps corrispondesse sostanzialmente alla qualità originale, è solo selettivamente il caso (a seconda del video sorgente).

La maggior parte dei nostri test è stata eseguita utilizzando lo stesso hardware che utilizziamo per le nostre ultime revisioni delle schede grafiche, ma abbiamo anche eseguito il test della CPU sul PC 12900K che alimenta la nostra gerarchia di benchmark GPU 2022. Come test di codifica della CPU più faticoso, abbiamo anche eseguito il 13900K con un preset di codifica di qualità superiore, ma ne parleremo più avanti tra poco.

PC INTEL DI 13ª GENERAZIONE Intel Core i9-13900KMSI MEG Z790 Ace DDR5G.Skill Trident Z5 2x16GB DDR5-6600 CL34Sabrent Rocket 4 Plus-G 4TBstai tranquillo! Dark Power Pro 12Cooler Master PL360 Flux da 1500 WWindows 11 Pro 64 bitPC INTEL DI 12A GENERAZIONEIntel Core i9-12900KMSI Pro Z690-A WiFi DDR4Corsair 2x16GB DDR4-3600 CL16Crucial P5 Plus 2TBCooler Master MWE 1250 V2 GoldCorsair H150i Elite CapellixCooler Master HAF500Windows 11 Pro 64-bit

Per il nostro software di test, abbiamo riscontrato che ffmpeg nightly è la migliore opzione attuale. Supporta tutti i più recenti codificatori video AMD, Intel e Nvidia, può essere configurato in modo relativamente semplice e fornisce anche la funzionalità VMAF (Video Multi-Method Assessment Fusion) che utilizziamo per confrontare la qualità della codifica video. Tuttavia, abbiamo dovuto utilizzare l'ultima versione ufficiale, la 5.1.2, per i nostri test Nvidia Pascal (la build notturna non è riuscita sulla codifica HEVC). Stiamo eseguendo la codifica a passaggio singolo per tutti questi test, poiché utilizza l'hardware fornito dalle varie GPU e non sempre è in grado di gestire istruzioni di codifica più complesse. La codifica video GPU viene generalmente utilizzata per cose come lo streaming live del gameplay, mentre se desideri la migliore qualità dovresti generalmente optare per la codifica basata su CPU con un CRF (fattore di frequenza costante) elevato di 17 o 18, anche se ovviamente ciò risulta in file molto più grandi e bitrate medi più elevati. Ci sono ancora molte opzioni che vale la pena discutere, tuttavia. AMD, Intel e Nvidia hanno tutti diversi "preset" per la qualità, ma cosa siano esattamente questi preset o cosa facciano non è sempre chiaro. NVENC di Nvidia in ffmpeg utilizza "p4" come impostazione predefinita. E il passaggio a "p7" (qualità massima) ha fatto poco per i punteggi VMAF, riducendo le prestazioni di codifica dal 30 al 50%. AMD opta per un'impostazione "-qualità" di "velocità" per il suo codificatore, ma abbiamo testato anche con "bilanciato" e, come Nvidia, l'impostazione massima di "qualità" ha ridotto molto le prestazioni ma ha migliorato solo i punteggi VMAF di 1~2 per cento. Infine, Intel sembra utilizzare un valore predefinito "medio" e abbiamo riscontrato che è una buona scelta: "veryslow" ha impiegato quasi il doppio del tempo per la codifica con un piccolo miglioramento della qualità, mentre "veryfast" era moderatamente più veloce ma la qualità era piuttosto ridotta. bit. Alla fine, abbiamo optato per due serie di test. Innanzitutto, abbiamo le impostazioni del codificatore predefinite per ciascuna GPU, dove l'unica cosa che abbiamo specificato era il bitrate target. Anche in questo caso, ci sono lievi differenze nelle dimensioni dei file codificati (circa il +/- 5%). In secondo luogo, dopo aver consultato il subreddit ffmpeg, abbiamo tentato di ottimizzare le GPU per impostazioni di codifica leggermente più coerenti, specificando una dimensione GOP pari a due secondi ("-g 120" per i nostri video a 60 fps). AMD è stata la più grande beneficiaria della nostra messa a punto, scambiando la velocità con punteggi VMAF più alti di circa il 5-10%. Ma come vedrai, AMD è ancora dietro alle altre GPU. Ci sono molti altri potenziali parametri di regolazione, alcuni dei quali possono cambiare parecchio le cose, altri che sembrano ottenere molto poco. Non puntiamo alla qualità dell'archivio, quindi abbiamo optato per preimpostazioni più veloci che utilizzano le GPU, ma potremmo rivisitare le cose in futuro. Fatevi sentire nei nostri commenti se avete consigli alternativi sulle migliori impostazioni da utilizzare sulle varie GPU, con una spiegazione di cosa fanno le impostazioni. Inoltre, non è chiaro come le impostazioni e la qualità di ffmpeg siano paragonabili ad altri potenziali schemi di codifica, ma questo va oltre lo scopo di questo test. Ecco le impostazioni che abbiamo utilizzato, sia per la codifica predefinita che per la codifica "ottimizzata".