Gestione della memoria

Come già anticipato, l’architettura delle memoria di GF100 è stata profondamente rivisitata al fine di essere più flessibile ed adattarsi alle reali esigenze dei programmatori. Le precedenti GPU integravano 16 KB di memoria condivisa per ogni SM, questa è stata estesa a 64 KB e può essere configurata liberamente in due configurazioni:

  • 48 KB condivisa + 16 KB L1

  • 16 KB condivisa + 48 KB L1 (modalità da utilizzare con i vecchi applicativi)

Nel secondo caso, pur non potendo sfruttare nativamente la cache di dimensioni maggiori, l’incremento delle prestazioni può essere sensibile, infatti la cache L1 viene usata per memorizzare i dati e i registri prima che vengano elaborati dalla GPU riducendo di fatto, le latenze di accesso alla memoria DRAM della scheda video. Fermi include inoltre 768 KB di cache L2 condivisa tra tutte le unità di elaborazione e posta fisicamente al centro del chip.


NVIDIA GeForce GTX 480 e GTX 470 testate per voi 3. GF100 per GP-GPU - Parte 2 1

NVIDIA GeForce GTX 480 e GTX 470 testate per voi 3. GF100 per GP-GPU - Parte 2 2 

NVIDIA GeForce GTX 480 e GTX 470 testate per voi 3. GF100 per GP-GPU - Parte 2 3 

Il supporto ECC (Error Correcting Code) non è particolarmente interessante in ambito domestico, ma è una killer feature per l’ambito medicale e cluster su larga scala, garantendo una maggiore sicurezza nella gestione dei dati, evitando possibili errori causati da fattori interni o esterni. Fermi supporta la modalità Single-Error Correct Double-Error Detect (SECDED), può quindi rilevare e correggere un singolo bit errato e riconoscere un certo numero di errori su più bit (in questo caso l’operazione dovrà essere annullata e ripetuta). Sono protette con la tecnologia ECC tutti i registri, la cache L1 e L2 e la comunicazione con il BUS PCI-Ex e con le memorie (CRC check).

GigaThread Thread Scheduler

La tecnologia GigaThread Scheduler è presente sin dalla capostipite G80, ma è stata estesa per aumentarne l’efficienza e la velocità di esecuzione. Come una CPU anche le GPU supportano il multitasking ma, fino ad oggi, non erano integrate particolari tecnologie per migliorare il flusso di esecuzione delle istruzioni. La nuova versione dello Scheduler NVIDIA è in grado di aumentare l’utilizzo della GPU inserendo nella coda di elaborazione differenti “Kernel” (singolo frammento di programma o set di istruzioni), invece di doverli eseguire in modo sequenziale.

NVIDIA GeForce GTX 480 e GTX 470 testate per voi 3. GF100 per GP-GPU - Parte 2 4