Spieghiamo perché amd migliora di più di nvidia quando si passa a directx 12
Sommario:
- Il sovraccarico è la causa del miglioramento di AMD con DirectX 12
- E perché AMD non piace Nvidia?
- E gli shader asincroni?
Sicuramente hai letto o sentito che le schede grafiche AMD sono molto migliori in DirectX 12 rispetto a Nvidia, che l'architettura utilizzata dalla prima è molto più preparata per funzionare con l'API di nuova generazione. Queste sono affermazioni che di solito vediamo ogni giorno, ma AMD è davvero migliore di Nvidia in DirectX 12? Ti diciamo tutto ciò che devi sapere in questo post.
Il sovraccarico è la causa del miglioramento di AMD con DirectX 12
Da quando DirectX 12 ha iniziato a parlare, abbiamo visto grafici comparativi come il seguente:
Questa grafica confronta due schede grafiche equivalenti come la GeForce GTX 980 Ti e la Radeon R9 Fury X, se passiamo dalle immagini precedenti vediamo che AMD ha un brutale guadagno in termini di prestazioni passando da DirectX 11 a DirectX 12, contro Nvidia, rimane pari o addirittura perde prestazioni quando si inizia a lavorare con la nuova API. Vedendo questo, qualsiasi utente potrebbe pensare che la scheda AMD sia molto meglio della scheda Nvidia.
Ora passiamo a guardare l'immagine seguente:
Questa volta il grafico confronta le prestazioni della GeForce GTX 980 Ti e della Radeon R9 Fury X in DirectX 11 e DirectX 12. Quello che possiamo vedere è che in DirectX 11 la scheda Nvidia produce quasi il doppio di quella di AMD e quando si passa a DirectX 12 le prestazioni sono equalizzate. Vediamo che Radeon R9 Fury X migliora molto le sue prestazioni quando si lavora con DirectX 12 e GeForce GTX 980 Ti migliora molto meno. In ogni caso, le prestazioni di entrambi in DirectX 12 sono le stesse poiché la differenza non raggiunge 2 FPS a favore di Fury X.
A questo punto dobbiamo chiederci perché AMD ha un tale miglioramento quando si passa a DirectX 12 e Nvidia migliora molto meno. AMD funziona meglio con DirectX 12 di Nvidia o ha un grosso problema con DirectX 11?
La risposta è che AMD ha un grosso problema con DirectX 11, un problema che rende le sue schede peggiori di quelle di Nvidia. Questo problema è correlato all'uso che i driver della scheda fanno del processore, un problema noto come " sovraccarico " o sovraccarico.
Le schede grafiche AMD fanno un uso molto inefficiente del processore con DirectX 11, per verificare questo problema dobbiamo solo guardare i seguenti video che analizzano le prestazioni di Radeon R7 270X e GeForce GTX 750 Ti con un Core- i7 4790K e quindi con un Core-i3 4130. Come possiamo vedere, il grafico AMD perde molte più prestazioni quando si lavora con un processore molto meno potente.
Far Cry 4
Ryse: figlio di Roma
COD Advanced Warfare
La chiave di ciò è nella " coda dei comandi " o negli elenchi di comandi in DirectX 11. In un modo molto semplice e comprensibile possiamo riassumerlo in quanto le schede grafiche AMD accettano tutte le chiamate di disegno all'API e le inseriscono un singolo core del processore, questo li rende molto dipendenti dalla potenza single-thread del processore e quindi soffrono molto quando lavorano insieme con un processore meno potente per core. Questo è il motivo per cui la grafica di AMD ha sofferto molto con i processori AMD FX, molto meno potente per core rispetto a Intel.
Invece Nvidia prende le chiamate di disegno all'API e le divide tra i diversi core del processore, con questo il carico viene distribuito e viene fatto un uso molto più efficiente e meno energia dipende dal core del processore. Di conseguenza AMD soffre molto di più rispetto a Nvidia in DirectX 11.
Controllare quest'ultimo è molto semplice, dobbiamo solo monitorare un AMD e una scheda grafica Nvidia sotto lo stesso gioco e lo stesso processore e vedremo come nel caso di Nvidia tutti i core funzionino in modo molto più equilibrato.
Questo problema ambientale è stato risolto con DirectX 12 ed è questo il motivo principale per cui le schede grafiche AMD hanno un enorme guadagno in termini di prestazioni passando da DirectX 11 a DirectX 12. Se osserviamo il seguente grafico, vediamo come in DirectX 12 le prestazioni non vengano più perse quando si passa da un processore dual-core a uno dei quattro.
E perché AMD non piace Nvidia?
L'implementazione di Nvidia delle code dei comandi in DirectX 11 è molto costosa e richiede un grande investimento di denaro e risorse umane. AMD ha avuto una brutta situazione finanziaria, quindi non ha le stesse risorse che Nvidia può investire. Inoltre, il futuro passa attraverso DirectX 12 e non si verificano tali problemi generali poiché l'API stessa è responsabile della gestione delle code dei comandi in un modo molto più efficiente.
Inoltre, l'approccio Nvidia ha il problema di essere molto più dipendente dall'ottimizzazione dei driver, quindi Nvidia è di solito la prima a rilasciare nuove versioni dei suoi driver ogni volta che un gioco importante arriva sul mercato, sebbene AMD abbia messo il impila su questo ultimamente. L'approccio di AMD ha il vantaggio di essere molto meno dipendente dai driver, quindi le sue schede non hanno bisogno di nuove versioni con la stessa urgenza di quelle di Nvidia, questo è uno dei motivi per cui le schede grafiche di Nvidia peggiorano con il passare del tempo quando non sono più supportati.
E gli shader asincroni?
Si è anche parlato molto di Shader asincroni, in merito a ciò dobbiamo solo dire che è stata data molta importanza quando in realtà il sovraccarico è molto più importante e determina le prestazioni della scheda grafica. Nvidia li supporta anche se la sua implementazione è molto più semplice di quella di AMD, la ragione di ciò è che la sua architettura Pascal funziona in modo molto più efficiente, quindi non ha bisogno di shader asincroni quanto AMD.
La grafica di AMD include gli ACE, che sono un motore hardware dedicato al calcolo asincrono, un hardware che occupa spazio sul chip e consuma energia, quindi la sua implementazione non è un capriccio, ma a causa di una grave carenza dell'architettura Graphics Core. Avanti da AMD con geometria. L'architettura di AMD è molto inefficiente quando si tratta di distribuire il carico di lavoro tra le diverse unità di calcolo e i core che le compongono, ciò significa che molti core sono senza lavoro e quindi sprecati. Quello che fanno gli ACE e gli Shader asincroni è "dare lavoro" a questi nuclei che sono rimasti disoccupati per poter essere sfruttati.
Nell'altra parte abbiamo la grafica Nvidia basata sulle architetture Maxwell e Pascal, queste sono molto più efficienti in geometria e il numero di core è molto inferiore a quello della grafica AMD. Questo rende l'architettura Nvidia molto più efficiente quando si tratta di dividere il lavoro e non si sprecano molti nuclei come nel caso di AMD. L'implementazione degli shader asincroni in Pascal avviene tramite software, poiché realizzare un'implementazione hardware non fornirebbe quasi alcun vantaggio in termini di prestazioni, ma costituirebbe un freno alla dimensione del chip e al suo consumo di energia.
Il grafico seguente mostra il guadagno in termini di prestazioni di AMD e Nvidia con gli shader asincroni 3D di Mark Time Spy:
Se Nvidia implementerà in futuro Shader asincroni hardware dipende dai benefici che superano il danno.
Che cosa sono le librerie di runtime vulkan? te lo spieghiamo in dettaglio
Spieghiamo che è Vulkan Run Time Libraries e perché non dovresti rimuoverlo dal tuo computer anche se non lo hai installato volendo.
Nvidia ampere, prestazioni rt più elevate, clock più alti, più vram
Le voci derivavano da fughe di notizie sulla tecnologia Nvidia Ampere di prossima generazione che l'azienda condivideva con i suoi partner.
Dropbox: spieghiamo le sue nuove funzionalità
dropbox incorpora nuove funzionalità e dettagliamo tutto ciò che devi sapere sui suoi nuovi servizi e su come funziona.