Rilevanza della soluzione PhysX su CPU

Guida - È possibile usare PhysX con schede Radeon? Abbiamo abbinato Radeon e GeForce per scoprirlo.

Avatar di Tom's Hardware

a cura di Tom's Hardware

Rilevanza della soluzione PhysX su CPU

Nvidia consente l'accelerazione di PhysX via GPU solo sulle proprie schede video, forzando chi non ne ha una a calcolare con la CPU le istruzioni PhysX implementate nei videogiochi. Il risultato - con PhysX attivato - per un videogiocatore sprovvisto di scheda GeForce, è solitamente un titolo ingiocabile. L'obiettivo di questo articolo non è giudicare le decisioni delle aziende, ma capire il motivo per cui le prestazioni su sistemi senza scheda Nvidia sono così ridotte.

jpg

Perché PhysX gestito dalla CPU è molto più lento rispetto a PhysX gestito dalla GPU con i giochi moderni?

Assumendo che un calcolo si possa parallelizzare, una GPU con più unità shader è più rapida di una CPU convenzionale dotata di due, tre, quattro o persino sei core. Secondo Nvidia i calcoli fisici sono più veloci dalle due alle quattro volte sulle GPU rispetto alle CPU. Questa tuttavia è solo una parte della verità perché non ci sono caratteristiche fisiche che la CPU non sia in grado di gestire. Molto spesso i giochi usano un approccio combinato CPU + GPU, con calcoli altamente parallelizzati, come gli effetti particellari gestiti dalla CPU e i calcoli più statici non parallelizzati, come i movimenti, amministrati dalla CPU. Ciò si verifica per esempio in Sacred 2. In teoria il rapporto dei calcoli altamente parallelizzati dovrebbe essere in molti casi troppo basso per avvantaggiarsi dell'immensa potenza della GPU.

Perché quindi, nella pratica, c'è una differenza così drastica?

Ci sono almeno due ragioni. La prima è che in quasi tutti i titoli provati, PhysX gestito dalla CPU sfrutta un singolo thread, senza badare all'eventuale presenza di più core. La seconda è che Nvidia sembra intenzionalmente non disposta a ottimizzare i calcoli sulla CPU in modo da far apparire migliori le proprie GPU. Indagheremo sul multithreading in futuro con una batteria di benchmark adatti. Oggi vogliamo parlare della decisione di Nvidia di lasciare il proprio codice in uno stato tale che le CPU non possano competere ad armi pari con le GPU.