mercoledì 13 aprile 2016

Zotac GTX-970: La prova sul campo.


GPU Nuova: Vita Nuova, con questo vecchio proverbio, (un po' adattato alla circostanza), in testa durante questo week-end mi sono divertito a testare la mia nuovissima Zotac / nVidia GTX-970 per capirne limiti e potenzialità. Per farlo mi sono servito di tutta una serie di benchmarks più o meno famosi, in genere liberamente scaricabili dalla rete. Oltre ai benchmarks ho anche messo alla prova la GPU nuova con alcuni giochi, tra nuovi e meno nuovi, con comparto grafico particolarmente intensivo.
Visto che i risultati ( e diverse considerazioni fatte in fase di analisi degli stessi) posso essere interessanti per tutti ho deciso di pubblicare con questo post un report dettagliato di tutta la sessione di test.


Indice:



Specifiche Tecniche della GPU:

Per contestualizzare tutte le prove credo sia bene dare innanzitutto una occhiata alle specifiche tecniche ufficiali della scheda che sono reperibili sul sito di Zotac. Non metterò qui l'elenco completo (per altro disponibile sul sito di Zotac)  ma solo quelle principali:


GPU: GeForce® GTX 970
CUDA Core: 1664
Memoria Video: 4GB GDDR5
Bus di Memoria: 256-bit
Engine Clock: Base: 1076 MHz, Boost: 1216 MHz
Clock Memoria: 7010 MHz
PCI Express: 3.0
Consumo: 145W
Power input: 2 x 6-pin
API: DirectX 12.1, OpenGL 4.5
Dimensioni scheda: 203.96mm x 111.15mm


Drivers Utilizzati:

Tutte le prove sono state effettuate utilizzando i driver nVidia GeForce Game-Ready v364.72 WHQL, rilasciati il 28 Marzo scorso. Il changelog di questi drivers e' disponibile in formato PDF a questo Link. Importante notare che visto che avevo già installato la stessa versione dei drivers prima di montare la nuova GPU ho effettuato una nuova installazione "pulita" degli stessi, giusto per essere sicuro che tutto fosse configurato a dovere per la nuova scheda.


SteamVR Preformance Test:

La prima prova che ho eseguito è stata quella di lanciare nuovamente lo SteamVR Performance Test, che  poco più di un mese fa aveva visto "fallire" (o quasi) la vecchia GPU. Il risultato ottenuto dalla nuova scheda è stato invece molto incoraggiante: La GTX-970 viene promossa a pieni voti come "Ready" a renderizzare giochi VR in alta qualità. Esaminando bene le statistiche riportate nel prospetto riepilogativo si nota che la GPU ha ottenuto un punteggio di qualità pari a 7, attestandosi quindi ad un livello medio "Alto". La GTX-770 AMP! invece andava da "Medio" a "Alto", con punteggio di 2.5, quindi ben meno della metà della GTX-970.


3DMark Benchmark (DX11):

Non potevo non far fare alla mia nuova GPU un giro con il benchmark, anzi, con la suite di benchmarks più famosa, ovvero il 3DMark. Ho quindi lanciato i benchmarks Firestrike e Sky Diver, ottenendo rispettivamente un punteggio di 9725 con il primo e 25789 con il secondo:


I due screenshot sopra mostrano il dettaglio dei risultati. Avrei voluto testare anche le performances della GPU con DirectX 12 ma il benchmark API Overhead Feature Test continua a crasharmi inesorabilmente... Peccato!


Unigine Benchmarks (DX11):

Ho imparato ad apprezzare gli splendidi Benchmarks creati con il motore grafico Unigine fin dai tempi in cui testavo le capacità della mia vecchia GTX-295 (sempre a brand Zotac) oramai quasi 8 anni fa. Li trovo ottimi tool per testare sia le capacità grafiche che termiche di una GPU messa sotto stress, anche se supportano ancora solo fino a DX11.


Il primo giro l'ho fatto con l'Unigine Heaven Benchmark v4.0 e la sua splendida città fra le nuvole. La GTX-970 ha ottenuto un punteggio di 1346 con 53.4 FPS medi in qualità Ultra.


E' stato quindi il turno di Unigine Valley Benchmark v1.0 con la suo incantevole paesaggio immerso nel verde dove il risultato è stato un punteggio di 2358 con 56.3 FPS di media a qualità Extreme.


FurMark Stress Test (OpenGL):

Un altro stress test, questa volta per OpenGL: Il FurMark e' utile per testare sia le capacità grafiche che la stabilità termica di una GPU visto che il suo "ciambellone peloso" e' renderizzato con un algoritmo che utilizza in modo intensivo la scheda grafica facendola arroventare... Per il test ho utilizzato la recente versione v1.17.0 e lanciato il Test Preset 1080 FHD.


Il risultato è stato un punteggio di 3180 con una media di 53 FPS. Dato interessante è che la GPU ha raggiunto durante il test la temperatura massima di 62°C, ben sotto la soglia di guardia. C' e' pero' da dire che il test preset ha una durata molto limitata nel tempo (circa un minuto), quindi probabilmente lasciando girare il test più a lungo la temperatura massima sarebbe salita ulteriormente.


FluidMark (PhysX + OpenGL)

Il benchmark FluidMark e' realizzato da Geeks3D, ovvero lo stesso team che ha implementato FurMark, e serve per testare le capacità di una GPU nVida alle prese con la Fisica dell'API PhysX. In particolare il benchmark mostra una scena 3D renderizzata con OpenGL e che include una animazione di fluido implementata utilizzando il metodo SPH o Smoothed Particle Hydrodynamics.


Vista la natura a doppia GPU del mio sistema (ho anche una scheda Zotac GTX-750ti utilizzata per gestire il secondo monitor e dedicata ai calcoli PhysX e alle API GPGPU come CUDA e OpenCL) ho diviso il test in 2 parti: Nella prima parte, tramite il pannello di controllo nVidia ho impostato  la GTX-970 come GPU dedicata a PhysX, facendo quindi in modo che la scheda si occupasse sia del rendering della scena OpenGL che dei relativi calcoli della fisica delle particelle. In questo modo sono andato a testare la "pura" potenza della scheda in una situazione di utilizzo tipico alla maggior parte degli utenti. Il risultato è stato un punteggio di 5321 con 87 FPS di media.


Nella seconda parte ho invece assegnato i calcoli PhysX alla GTX-750ti e lasciato il compito del rendering della scena alla GTX-970, in modo da poter valutare l'impatto che i calcoli della fisica hanno sulla potenza computazionale della singola GPU. Il risultato in questo caso è stato un punteggio di 6243 con un conteggio FPS medio di 102!

Comparando quest'ultimo risultato al precedente si possono fare 2 considerazioni: La prima è che la voce che girava tempo fa che nVidia avesse di nascosto bloccato l'accelerazione hardware dei calcoli PhysX (per non si sa quale motivo) e forzato l'uso del calcolo software è del tutto infondata (o per lo meno lo è adesso). A dimostrarlo è il fatto che caricando la GPU di questi calcoli si nota un leggero, ma evidente, performance drop.

La seconda considerazione, figlia della precedente, è che l'accelerazione hardware dei calcoli PhysX non è gratis ma "pesa", in modo non irrilevante, sulla GPU. Se quindi da un lato demandare all'hardware i calcoli della fisica diminuisce il carico della CPU, dall'altro carica ulteriormente la GPU rallentandola.Sarebbe interessante valutare quanto i calcoli della fisica pesano sulla CPU quando eseguiti dall'API software e non dall' hardware della CPU, in modo da poter capire quanto sia in effetti conveniente attivare questa opzione nelle configurazioni PC son solo una GPU nVidia. E' comunque evidente il fatto che la soluzione migliore per chi volesse raggiungere prestazioni estreme con il proprio PC (e avesse dei soldi in più da spendere) sia quella di avere una GPU secondaria dedicata a PhysX. I ragazzi di Ageia, con la loro PPU PhysX P100 non avevano quindi torto...


TessMark (OpenGL, Tessellation):

TessMark è un altro benchmark OpenGL sviluppato da Geeks3D ed è utile per testare le capacità di Tessellazione di una GPU che supporti OpenGL 4.0. Per questa prova ho utilizzato l'ultima versione disponibile, ovvero la v0.3.0 oramai un po' datata.


Il primo giro di TessMark, lanciato con le impostazioni standard mi ha dato come risultato un valore incredibilmente alto: 67460 punti con 1125 FPS medi. Capito che la GPU poteva fare molto di più ho rilanciato il test settando questa volta tutti i parametri disponibili al massimo possibile:


Il risultato questa volta è stato un punteggio di 12821 con 213 FPS di media. Minore del precedente, ma sicuramente più indicativo delle reali capacità della GPU.


Test In-Game:

La GTX-970 è una GPU nata per il gaming, quindi non c'è prova migliore alla quale sottoporla se non utilizzarla per giocare. Ho quindi selezionato una lista di titoli, tra recenti e meno recenti, tra la lista di quelli che possiedo e provato come si comportava con loro. Trattandosi di giochi l'unico parametro di riferimento è il numero medio di frames renderizzati per secondo, non avendo un tool per misurare con precisione tale valore ho dovuto procedere "ad occhio" utilizzando Fraps e prendendo come valore quello più frequente. Non è un metodo particolarmente "scientifico" ma è il massimo che ho potuto fare.

Gioco Settings FPS medi
Arma 3 Ultra 65
Assassin's Creed IV: Black Flag Massimo(*) 45
Bioshock: Infinite Ultra 130
Crysis 3 Massimo (*) 45
Call of Duty: Black Ops 3 Massimo(*) 95
Deus Ex: Human Revolution - Director's Cut Massimo(*) 200
Dying Light: Enhanced Edition Massima 90
Far Cry 4 Ultra 80
Grand Theft Auto V Massimo(*) 85
Just Cause 3 Massimo(*) 90
Lords of the Fallen Molto Alto 85
Metal Gear Solid V: The Phantom Pain Massimo(*) 60
The Witcher 3: Wild Hunt Estrema 40
Tom Clancy's The Division Ultra 50
Wolfenstein: The Old Blood Ultra 60


Tutti i giochi sono stati testati in versione vanilla (senza cioè mods attive), con output video full-screen alla risoluzione nativa del mio monitor principale (Full HD 1920x1080) e impostando, dove possibile, il preset grafico più alto senza editarlo ulteriormente a mano. Nella tabella qui sopra ho riportato il preset che ho utilizzato in modo che i più curiosi possano andare a spulciare quali sono i settaggi interessati e come erano configurati durante la prova. Laddove ho dovuto "massimizzare" a mano i dettagli ho aggiunto un asterisco (*) accanto al nome del preset, chiamato genericamente "Massimo".


Riepilogo Risultati Benchmarks:


Benchmark API Score FPS medi
3DMark - Firestrike DX11 9725 55.2/44.8/20
3DMark - Sky Diver DX11 25789 165/174/89
FluidMark v1.5.2 (PhysX su GTX-750ti) PhysX / OpenGL 6243 102
FluidMark v1.5.2 (PhysX su GTX-970) PhysX / OpenGL 5321 87
FurMark v1.17.0 OpenGL 3214 53
SteamVR Performance Test SteamVR 7 (High) 117
TessMark v0.3.0 (Standard) OpenGL, Tessellation 67460 1125
TessMark v0.3.0 (Extreme) OpenGL, Tessellation 12821 213
Unigine Heaven v4.0 DX11 1346 53.4
Unigine Valley v1.0 DX11 2358 56.3

Nessun commento:

Posta un commento