La scheda video
«Io non ho la scheda video» si sente dire spesso, quasi sempre davanti a un computer che in quel preciso momento sta disegnando un’immagine sullo schermo.
Ce l’hanno tutti, la domanda è dove sta
Se sullo schermo compare qualcosa, c’è qualcosa che l’ha disegnato. La domanda giusta non è se ce l’hai. È dove si trova.
Integrata: il chip grafico sta dentro lo stesso pezzo di silicio del processore. È il caso della stragrande maggioranza dei portatili e dei computer da ufficio.
Dedicata: è un chip a parte, con la sua memoria, il suo raffreddamento e il suo consumo di corrente.
Perché esiste un chip apposta
Il processore ha pochi lavoratori, veloci e capaci di fare qualsiasi cosa. La scheda video ha migliaia di lavoratori lenti che sanno fare una cosa sola, tutti nello stesso momento sullo stesso tipo di calcolo.
Quella forma strana ha una ragione precisa. Colorare due milioni di pixel vuol dire fare due milioni di operazioni separate, indipendenti l’una dall’altra. Nessuna aspetta il risultato della vicina. È il lavoro perfetto per una folla di operai semplici.
Come è fatta dentro
I «lavoratori» hanno un nome commerciale diverso a seconda della marca: NVIDIA li chiama CUDA core, AMD stream processor. Su una scheda recente sono migliaia, contro gli otto o sedici core di un processore.
Non sono però lavoratori indipendenti come i core di una CPU. Sono organizzati in gruppi, e tutti quelli di un gruppo eseguono la stessa identica istruzione nello stesso momento, ognuno su un dato diverso. È la differenza che spiega tutto il resto: una scheda video vola quando c’è da fare la stessa cosa su moltissimi dati, e va male appena i dati richiedono decisioni diverse l’uno dall’altro.
Un processore fa il contrario. Pochi lavoratori, ciascuno capace di seguire una strada tutta sua, di saltare, di aspettare, di cambiare idea. È il motivo per cui la scheda video non sostituisce la CPU e non lo farà mai: gestire Windows non è un problema fatto di due milioni di operazioni uguali.
Da dove viene questa forma
Le prime schede acceleratrici degli anni Novanta non erano programmabili. Sapevano fare una lista fissa di operazioni cablate nel silicio: prendere dei triangoli, ruotarli, illuminarli, riempirli di colore. Se volevi un effetto che il chip non prevedeva, non c’era modo di ottenerlo.
Il cambiamento arriva a inizio anni Duemila con gli shader programmabili: piccoli programmi che decidono come calcolare il colore di ogni pixel. Da quel momento la scheda video smette di essere un elettrodomestico con dei pulsanti e diventa una macchina che esegue codice.
Il momento in cui è diventata altro
Nel 2007 NVIDIA rilascia CUDA, un modo per far girare sulla scheda video programmi che con la grafica non c’entrano niente. Chi faceva simulazioni scientifiche si accorge che quella folla di operai semplici serviva anche a loro. È l’inizio di tutto quello che è venuto dopo, intelligenza artificiale compresa, e non era il piano di nessuno.
La differenza vera è la memoria
Ci si aspetterebbe che il divario stia nel chip grafico. Sta soprattutto altrove.
Una scheda dedicata ha la sua memoria personale, la VRAM, collegata al chip con un canale molto più largo di quello che serve alla RAM di sistema.
La memoria di sistema di un buon computer, con due banchi DDR5, sposta intorno ai 90 GB/s (gigabyte al secondo). La VRAM di una scheda dedicata di fascia alta supera i 1000 GB/s. Non è una differenza di rifinitura, è un ordine di grandezza, e viene da una memoria diversa (le sigle sono GDDR6 e GDDR7) collegata da molti più fili in parallelo.
Una scheda integrata non ha memoria propria. Prende in prestito la RAM del computer. Windows la chiama memoria GPU condivisa, e in genere può arrivare fino a circa metà della RAM installata.
Su un computer con grafica integrata, una parte della RAM non è tua. Su un portatile da 8 GB questo non è un dettaglio da appassionati.
Quando serve davvero quella dedicata
Per navigare, scrivere, guardare film, fare videochiamate e usare Office, l’integrata basta e avanza.
Vale anche per i video ad alta risoluzione. La decodifica è accelerata dall’hardware pure sulle integrate, e YouTube in 4K non ha mai avuto bisogno di una scheda dedicata.
Serve, quella dedicata, se giochi a titoli 3D recenti, se fai videoediting, se lavori in 3D o se fai girare modelli di intelligenza artificiale sulla tua macchina. Fuori da questi casi è soldi fermi.
Perché l’AI gira qui
Non era previsto, ed è successo per una coincidenza di forma.
Un modello di intelligenza artificiale, sotto il vestito, è in gran parte una lunghissima sequenza di moltiplicazioni fra tabelle di numeri. Ogni singola moltiplicazione è banale e non dipende dalle altre, quindi si possono fare tutte insieme. È esattamente lo stesso problema del colorare due milioni di pixel, con altri numeri dentro.
Le schede si sono poi adattate al nuovo mestiere. Dal 2017 NVIDIA aggiunge i tensor core, unità che non disegnano niente e sanno fare solo quel tipo di moltiplicazione, molto più in fretta del resto del chip. Nei portatili recenti compare anche una terza sigla, la NPU, un pezzo del processore dedicato agli stessi calcoli con consumi molto più bassi.
Qui la VRAM cambia ruolo e diventa il vincolo principale. Per far girare un modello sul proprio computer il modello deve entrare nella memoria della scheda: se non ci sta, non parte, o rallenta appoggiandosi alla RAM di sistema. Per l'intelligenza artificiale in locale non conta quanto è veloce la scheda, conta quanti GB di memoria ha.
Come vedere quale hai
Apri Gestione attività e vai su Prestazioni. Nella colonna di sinistra, in fondo, trovi una voce GPU 0. Se compare anche GPU 1, di schede ne hai due, l’integrata e la dedicata, e il computer sceglie da solo quale usare a seconda del programma.
Cliccando sulla voce, in basso a destra si leggono Memoria GPU dedicata e Memoria GPU condivisa. La seconda è quella presa in prestito dalla RAM.
Arrivarci senza passare dal mouse
Ctrl + Maiusc + Esc apre Gestione attività direttamente.