NVIDIA GeForce GTX 680: arriva Kepler
NVIDIA GeForce GTX 680 è solo il nome commerciale di un prodotto caratterizzato non solo da un rinnovato processo produttivo a 28 nanometri, ma anche dalla nuova architettura Kepler, con cui la nota azienda Californiana dovrà riuscire a competere con la concorrenza sempre più agguerrita di AMD. Andiamo allora ad osservare GK104, nome in codice Kepler, e le sue caratteristiche
di Gabriele Burgazzi, Paolo Corsini pubblicato il 22 Marzo 2012 nel canale Schede VideoNVIDIAAMDGeForce
L'architettura di Kepler
GeForce GTX 680 è la prima scheda video sviluppata da NVIDIA basata sulla nuova architettura conosciuta con il nome di Kepler. La nuova architettura sviluppata da NVIDIA basa le sue fondamenta sulle soluzioni Fermi introdotte sul mercato nel corso del 2010, che hanno portato l'azienda americana a ridisegnare completamente le proprie GPU, in grado di presentare una nuova pipeline per i calcoli geometrici paralleli, ottimizzata per la tessellation e il displacement mapping, ma non solo. Come abbiamo riportato nel corso dell'introduzione, parte delle modifiche apportate alla soluzioni di ultima generazione sono legate a doppio filo alla necessità di poter operare con grande potenza di calcolo in scenari "general purpose".
Per fornire un quadro che sia quanto più possibile chiaro, facciamo un piccolo elenco di quelle che sono le caratteristiche di GK104, la prima GPU sviluppata con architettura Kepler:
- 1536 CUDA core
- 8 Streaming Multiprocessor
- 128 Texture Unit
- 32 ROP Unit
- 4 Raster Unit
- 256-bit bus di memoria GDDR5
La nuova GPU Kepler è composta da differenti elementi, ognuno dei quali si occupa di una specifica operazione. Il GPC (Graphics Processing Cluster) rappresenta il blocco hardware più alto all'interno della struttura di Kepler. Con le risorse integrate all'interno del GPC, che prevedono la presenza di soluzioni per la rasterizzazione, la gestione delle texture e dello sharding, la maggior parte delle operazioni di calcolo grafico sono eseguite all'interno del GPC. Ecco come appare la struttura di GeForce GTX 680:
Ci troviamo di fronte ad una soluzione formata da quattro GPC e otto SMX, elemento di cui andremo tra poco a parlare. Ogni SMX contiene al suo interno 192 cuda core, il che porta ad un numero complessivo di ben 1536 CUDA core, quota decisamente superiore agli standard cui ci hanno abituato le GPU sviluppate da NVIDIA nel corso degli anni.. La cache L2 condivisa tra i 4 GPC è di 512KB.
Torniamo però ad analizzare la struttura di Kepler. All'interno del GPC è presente il nuovo Streaming Multiprocessor sviluppato da NVIDIA, identificato dalla sigla SMX. Questo elemento differenzia sensibilmente Kepler da Fermi ed è in grado di garantire un miglior livello prestazionale alle GPU di nuova generazione, andando a diminuire al tempo stesso i consumi.
Buona parte delle unità chiave per il processo dei calcoli grafici risiedono all'interno dell'SMX: i CUDA core sono infatti in grado di eseguire le operazioni di pixel/vertex e geometry shading, oltre ai calcoli computazionali e fisici. Le texture unit, come da tradizione, si occupano di gestire il texture filtering oltre ad inviare i dati alla memoria video. Le SFU (Special Function Units) sono invece sviluppate per getire le istruzioni di interpolazione, mentre il PolyMorph engine si occupa dell'output oltre che a gestire la tessellation e i vertex fetch. Kepler presenta tra le novità architetturali anche un nuovo PolyMorph Engine, definito PolyMorph Engine 2.0, capace di fornire un incremento di 2x rispetto a quello presente in Fermi, oltre ad alcune migliorie nel Raster Engine. La cache L1 è di 64KB.
Ecco come si presenta, nel dettaglio, il nuovo componente SMX delle GPU Kepler di NVIDIA:
Ogni SMX è costituito da 192 CUDA core che porta il conteggio finale, come abbiamo visto, ad un livello decisamente superiore rispetto alle soluzioni Fermi, portando in modo diretto un maggior potere computazionale. È stato eliminato il clock double speed presente in precedenza nei CUDA core integrati nelle GPU della famiglia Fermi, optando per una soluzione alternativa. Se da un lato poter andare a raddoppiare la frequenza di funzionamento di ogni singolo core garantiva una maggiore potenza di calcolo, i consumi erano esponenzialmente più alti. Con Kepler, grazie all'SMX completamente ridisegnato, ogni blocco è capace di contenere 192 CUDA core, un numero 6 volte più alto dell'SM presente in Fermi. Questo incremento, secondo quanto dichiarato, dovrebbe permettere alle nuove GPU di andare a migliorare il rapporto prestazioni/consumi di due volte.