Tre processori, diversi tipi di lavoro

CPU, GPU e NPU non sono tre livelli di una stessa scala di potenza di calcolo. Sono unità di elaborazione con progettazione e funzioni diverse: la CPU gestisce un’ampia varietà di istruzioni, la GPU eccelle quando molte operazioni possono essere eseguite in parallelo e la NPU è dedicata alle operazioni frequenti in alcuni modelli di intelligenza artificiale. Il vantaggio dipende dall’attività, non solo dal nome riportato nelle specifiche.

In un computer, questi componenti possono essere integrati in un unico chip oppure distribuiti su più componenti. Una GPU integrata fa parte dello stesso chip o package della CPU; una GPU dedicata è un componente separato. Entrambe possono elaborare la grafica, ma capacità e limiti energetici dipendono dalla progettazione specifica. L’integrazione non significa che la GPU sia assente: significa che non c’è una scheda grafica separata.

Un’analogia utile è immaginare squadre con specializzazioni diverse: la CPU affronta attività varie e coordina il lavoro, la GPU suddivide un’attività divisibile tra molte unità e la NPU esegue in modo efficiente determinate operazioni di IA. L’analogia ha dei limiti: un’applicazione può usare più di un’unità, e il sistema operativo e il software decidono come assegnare il lavoro.

CPU, GPU e NPU a confronto

Le unità possono collaborare; l’effettivo vantaggio dipende dal carico di lavoro e dal supporto software.

CPU, GPU e NPU a confronto
CPU · lavoro generaleVersatile; esegue istruzioni e attività comuni.
GPU · parallelismoAdatta a grafica e operazioni parallelizzabili.
NPU · inferenza IASpecializzata in modelli e operazioni supportati.

Funzioni generali nei computer

La tabella descrive ruoli tipici, non prestazioni garantite per uno specifico dispositivo o programma.

Fonti e riferimenti2

La CPU: versatilità e reattività nelle attività generali

La CPU esegue le istruzioni del sistema operativo e delle applicazioni ed è necessaria per il normale funzionamento del computer. Navigare, aprire programmi, gestire file ed eseguire calcoli di vario tipo coinvolge la CPU, anche se una specifica attività può delegare alcune parti ad altri processori. Il suo punto di forza è la flessibilità: può gestire molti tipi di operazioni, comprese quelle che non si prestano facilmente a essere suddivise in attività simultanee.

La CPU esegue le istruzioni del sistema operativo e delle applicazioni ed è necessaria per il normale funzionamento del computer. Navigare, aprire programmi, gestire file ed eseguire calcoli di vario tipo coinvolge la CPU, anche se una specifica attività può delegare alcune parti ad altri processori. Il suo punto di forza è la flessibilità: può gestire molti tipi di operazioni, comprese quelle che non si prestano facilmente a essere suddivise in attività simultanee.

La CPU esegue le istruzioni dei programmi e dei sistemi operativi, e le sue prestazioni contribuiscono alla velocità di attività come navigare, fare calcoli o lavorare con i fogli di calcolo. La GPU non sostituisce questo ruolo generale, anche se può collaborare con la CPU nelle attività che sfruttano l’elaborazione parallela.

La GPU: parallelismo per la grafica e oltre

La GPU è stata sviluppata per elaborare la grafica, dove operazioni simili possono essere applicate a molti elementi di un’immagine. La stessa architettura è utile anche per altri carichi di lavoro parallelizzabili, come alcuni processi video, calcoli scientifici o attività di intelligenza artificiale. Il parallelismo è il suo vantaggio principale: la GPU può gestire contemporaneamente grandi insiemi di operazioni compatibili, mentre la CPU si occupa del coordinamento e del codice che non trae vantaggio dalla suddivisione.

L’accelerazione non si verifica solo perché è installata una GPU. L’applicazione deve essere progettata per usarla, e il modello di programmazione, i driver e le librerie compatibili influiscono sul risultato. NVIDIA descrive il calcolo accelerato come l’assegnazione alla GPU delle parti più intensive di un’applicazione, mentre il resto continua a essere eseguito dalla CPU. Il software deve saper delegare il lavoro perché l’hardware specializzato offra un miglioramento.

Una GPU integrata è spesso adatta ai computer compatti e può contenere i consumi; una GPU dedicata può offrire più risorse per carichi grafici impegnativi, ma comporta un maggiore consumo energetico, più spazio occupato e più calore. Nessuna delle due categorie garantisce da sola un determinato livello di prestazioni: entrambe comprendono progetti molto diversi. Per giocare, montare video o lavorare con modelli, controlla l’applicazione, la memoria disponibile e i requisiti specifici, oltre al nome della GPU.

La NPU: accelerazione specializzata per l’IA

Una NPU, o unità di elaborazione neurale, è un acceleratore progettato per alcune operazioni utilizzate dalle reti neurali. Può eseguire inferenza, cioè applicare un modello già addestrato per produrre un risultato, come una trascrizione o il miglioramento di un’immagine. Secondo Microsoft, Windows ML può indirizzare l’inferenza a CPU, GPU o NPU tramite provider di esecuzione; il processore scelto dipende dall’hardware disponibile e dal modello. La presenza di una NPU non attiva automaticamente tutte le funzioni di IA.

La NPU può eseguire localmente inferenze compatibili ed è progettata per svolgere queste operazioni in modo efficiente. Il risultato dipende dal modello, dal dispositivo e dall’implementazione. Per usare la NPU, l’applicazione deve avere un percorso software compatibile e, talvolta, un modello adattato all’hardware. La compatibilità dell’applicazione conta quanto il chip.

Inoltre, non tutte le funzioni pubblicizzate come “IA” richiedono una NPU. Alcune possono essere eseguite su CPU o GPU, mentre altre dipendono da servizi remoti. In Windows, le API di IA, Windows ML e altri framework hanno requisiti e ambiti diversi; le funzioni che richiedono una specifica categoria di PC non vanno confuse con la capacità generale di eseguire modelli su acceleratori differenti. Prima di acquistare, verifica quale funzione vuoi usare e quali hardware e versione software richiede.

La NPU: aceleración especializada para IA Una NPU, o unidad de procesamiento neuronal, es un acelerador diseñado para ciertas operaciones que utilizan redes neuronales. Puede ejecu...
Imagen generada con IA por BytePreview · AI generated editorial image

Come collaborano CPU, GPU e NPU

In un flusso di lavoro, i processori possono dividersi le fasi: la CPU prepara i dati e coordina, la GPU elabora una parte parallelizzabile e la NPU può eseguire inferenze compatibili. Non è una ripartizione fissa per tutti i computer. Il software può indirizzare l’inferenza a processori diversi, a seconda dell’hardware disponibile e del modello; le prestazioni variano con la configurazione.

Windows ML illustra questo approccio per i modelli ONNX: la sua documentazione indica che può utilizzare CPU, GPU e NPU tramite provider di esecuzione e che le prestazioni dipendono dalla configurazione e dal modello. Prevede inoltre che un’applicazione usi la CPU come alternativa se non è disponibile un acceleratore appropriato. In questo modo è possibile progettare applicazioni per diverse configurazioni, ma non significa che tutte le combinazioni siano altrettanto rapide o che ogni modello funzioni su qualsiasi unità.

In un portatile, integrare CPU e GPU può contribuire a ridurre dimensioni e consumi; una GPU dedicata aggiunge una risorsa separata per le attività che possono sfruttarla. Una NPU integrata offre un’altra opzione specializzata per determinati modelli di IA. Ogni unità offre capacità diverse: la sua utilità dipende dalla compatibilità dell’attività e del software.

È il software a decidere se sfruttare l’acceleratore

La capacità teorica di un componente non significa che un’applicazione la utilizzi. Lo sviluppatore deve integrare il supporto per l’acceleratore, l’ambiente di esecuzione e i driver disponibili; inoltre, il modello potrebbe richiedere conversione o ottimizzazione. Microsoft spiega, per esempio, che alcune NPU accettano formati numerici a precisione inferiore e che i modelli devono essere preparati per funzionare su di esse. Il supporto deve esserci lungo tutta la catena, dal modello al driver.

È importante anche distinguere l’inferenza dall’addestramento. In un PC, una NPU è in genere orientata a eseguire modelli per ottenere risultati, non a gestire tutte le fasi della creazione o dell’addestramento dei modelli. La GPU può accelerare alcuni carichi di addestramento e inferenza, mentre la CPU mantiene le funzioni generali e può fungere da alternativa. Queste categorie si sovrappongono in alcune attività, ma non sono intercambiabili in tutti i programmi.

Le operazioni al secondo (TOPS) e il numero di core sono due delle caratteristiche dell’hardware che possono essere considerate. Per valutare un carico di lavoro di IA, si possono confrontare anche la precisione numerica, le dimensioni del modello e la configurazione hardware. Le prestazioni variano in base al modello e al computer.

Cosa controllare prima di scegliere un computer

Parti dall’uso principale, non dall’etichetta “AI PC” o dal componente con il numero più appariscente. Per le attività generali, confronta CPU e capacità della memoria; per i giochi o la creazione visiva, controlla la GPU e i requisiti del programma; per una funzione di IA locale, verifica se l’applicazione supporta la NPU e se richiede un modello o una versione specifica di Windows. La specifica utile è quella adatta al tuo carico di lavoro.

Una verifica pratica può seguire questo ordine:

  • Individua l’applicazione e l’attività esatta che vuoi accelerare.
  • Controlla i requisiti ufficiali di sistema, acceleratore, memoria e versione del software.
  • Verifica se la funzione viene eseguita localmente o dipende da un servizio online.
  • Cerca risultati di prestazioni per quell’applicazione e una configurazione comparabile.
  • Valuta consumi, rumore, dimensioni e autonomia insieme alla velocità.

CPU, GPU e NPU sono progettate per diversi tipi di elaborazione e possono essere importanti per attività differenti. È l’applicazione a determinare se usa un acceleratore e quale unità sfrutta. Controlla la compatibilità con il programma che intendi usare e consulta i relativi requisiti hardware e software.