NPU: cosa sono i processori per l’intelligenza artificiale degli AI PC. Il 2023 verrà ricordato nella storia della tecnologia come l’anno in cui è letteralmente esplosa la popolarità dell’intelligenza artificiale generativa, annunciando una rivoluzione destinata a cambiare per sempre il nostro modo di lavorare, comunicare e vivere. Le applicazioni basate sulla generative AI stanno interessando tutti i verticali di business, con requisiti computazionali mediamente piuttosto elevati, al punto da aver innescato nel mercato IT la necessità di sistemi dedicati, segnando per certi versi il ritorno al personal computer inteso quale dispositivo fisico disponibile in locale per svolgere elaborazioni.
È quindi iniziata la generazione di quelli che sono stati definiti gli AI PC, per il fatto di disporre, oltre che delle tradizionali CPU e GPU, anche di un’unità di calcolo pensata appositamente per le funzioni AI: la NPU, acronimo di Neural Processing Unit.
I nuovi AI PC sfruttano le NPU in combinazione con la CPU e la GPU per ottimizzare il calcolo delle applicazioni basate sull’intelligenza artificiale, ottimizzando le risorse disponibili e di conseguenza i consumi energetici, oltre ad offrire performance sostanzialmente migliori rispetto alle generazioni precedenti.
Vediamo nello specifico cosa sono le NPU e cosa sta cambiando sui sistemi desktop e mobile all’alba della rivoluzione dell’intelligenza artificiale.
LEGGI ANCHE: AI PC cosa sono e perché guideranno la riscossa dei computer nel 2024
Cos’è una NPU
La NPU (Neural Processing Unit) è un processore progettato nello specifico per l’esecuzione di algoritmi di machine learning (ML) e deep learning (DL), con istruzioni specifiche per gestire anche i calcoli matematici complessi delle reti neurali.
Le NPU si distinguono nel calcolo in parallelo di grandi quantità di dati, come richiesto da applicazioni ML e DL come il riconoscimento delle immagini, il natural language processing (NLP) e altre funzioni basate su tecniche di intelligenza artificiale. Come vedremo nel paragrafo successivo, le NPU hanno quale obiettivo primario quello di sgravare la GPU ha alcune operazioni, consentendo al sistema di risultare più performante e meno esoso di risorse.
La prima generazione di AI PC, nel momento in cui scriviamo, si basa su tre tipologie di processori che integrano una NPU: gli Intel Core e Core Ultra di ultima generazione, gli AMD Ryzen serie 8040 e la grande novità, caratterizzata da Qualcomm Snapdragon Elite X, che promette performance molto interessanti anche su sistemi basati sul sistema operativo Windows.
Sui sistemi consumer e sulle singole workstation, le NPU sono solitamente integrate nella CPU principale, mentre per quanto riguarda le architetture hardware specifiche per i data center, sono disponibili anche componenti dedicati, installabili sulle schede madri dei server e fisicamente distinti dalle altre unità di calcolo.
I processori dedicati ad una funzione specifica non costituiscono certo una novità nel mondo dell’informatica, basti pensare agli ASICs (Application Specific Integrated Circuits), ma le NPU si differenziano per il fatto di essere concettualmente più flessibili nei confronti di varie tipologie di calcolo, pur sempre riferibili alle funzioni AI. In altri termini, le NPU sono progettate per elaborare i calcoli degli algoritmi di machine learning e deep learning in tutta la loro varietà matematica, non per assolvere a una funzione specifica.
NPU vs GPU vs CPU
Le NPU, come accennato in precedenza, sono state progettate in maniera specifica per sollevare le CPU e le GPU di parte del lavoro di calcolo per le funzioni AI. Le CPU costituiscono i processori principali di un dispositivo informatico e si occupano di elaborare un’ampio range di processi, mentre le GPU, su schede dedicate o integrate nella CPU, si occupano in primo luogo del rendering grafico.
Le CPU e soprattutto le GPU, grazie alla loro capacità di calcolo in parallelo, sono state finora utilizzate anche per calcolare gli algoritmi di machine learning, oltre ai processi che vengono loro abitualmente assegnati dal sistema operativo. In questo contesto, le NPU si occupano di svolgere almeno in parte il lavoro di calcolo per la AI abitualmente svolto dalla CPU e dalle GPU, per consentire a queste unità di performare meglio e, soprattutto, consumare meno energia.
Per rendere l’esempio, nelle videocall, la NPU può svolgere compiti come sfumare lo sfondo, alleggerendo il lavoro della GPU, oppure occuparsi del riconoscimento degli oggetti nei software di image editing, per rendere più rapida ed efficiente l’elaborazione complessiva.
Non si tratta in senso stretto di aggiungere potenza alla GPU, ma ottimizzare il workflow complessivo della macchina e renderlo più efficiente a livello energetico, fattore molto importante soprattutto sui sistemi mobile, che dipendono strettamente dalla durata della batteria.
Le GPU e le NPU di ultima generazione, che facciano parte o meno di un circuito integrato, sono concepite per lavorare in maniera complementare. Le GPU svolgono lavori gravosi che richiedono notevole potenza, mentre le NPU eccellono soprattutto nell’elaborazione nel contesto di task brevi e ripetitivi, come quello che caratterizza ad esempio il funzionamento dei chatbot AI.
LEGGI ANCHE: Microchip, cuore pulsante della realtà iperconnessa di oggi
AI PC: potenza ed efficienza alla ricerca di prestazioni ottimali
La configurazione di un AI PC sfrutta il lavoro simultaneo e coordinato della GPU e della NPU per sfruttarne i rispettivi vantaggi.
- Vantaggi NPU: risiedono principalmente nell’elevata specializzazione e nell’efficienza energetica, particolare le rende ormai praticamente indispensabili sui sistemi mobile, come gli smartphone e i laptop, chiamati sempre più spesso ad eseguire applicazioni che sfruttano funzioni AI.
- Vantaggi GPU: le NPU utilizzate per gli attuali AI PC desktop e mobile performano molto bene quanto si tratta di eseguire carichi di lavoro leggeri, ma mostrano i loro limiti nel caso dei modelli AI più complessi, che richiedono tutta la potenza delle GPU, dotate di un maggior margine di manovra, a discapito dei consumi energetici. In buona sostanza, il sistema dovrebbe sempre assegnare un lavoro alla GPU quando le prestazioni sono prioritarie rispetto ai consumi, ad esempio quando si tratta di addestrare modelli di grandi dimensioni in tempi accettabili.
GPU e NPU lavorano simultaneamente per creare una soluzione più scalabile rispetto ai sistemi di precedente generazione, con una gamma molto più ampia di funzionalità. Un’applicazione AI ben sviluppata dovrebbe cercare di utilizzare la NPU per la maggior parte del tempo, sfruttando la GPU solo quando necessario, per eseguire i calcoli più gravosi. Questa logica consente di preservare la durata della batteria, contenere i consumi energetici, offrendo agli utenti finali sistemi molto più sostenibili rispetto a quelli che erano abituati ad utilizzare fino a questo momento.
NPU e architetture hardware: la diffusione dei SoC (system on a chip)
L’evoluzione delle architetture rappresenta una costante del mercato hardware. Inizialmente era la CPU. Successivamente, si è presentata una maggior varietà di esigenze computazionali, e alla CPU sono stati affiancati una serie di acceleratori, altri processori con lo scopo di sollevare il processore principale dal calcolo di determinate funzioni, rendendolo contestualmente più efficiente e performante.
Per rendere più efficiente la comunicazione tra i vari elaboratori, è stata progettata un’architettura capace di integrare tutti sistemi di calcolo su un unico DIE: il SoC, acronimo di system on a chip. I SoC sono molto diffusi nell’ambito degli smartphone e dei tablet, che devono contenere al massimo la dimensione dell’hardware limitando il più possibile i consumi.
Apple, quando ha scelto di installare il processore M1 sui propri Macbook, ha diffuso su larga scala questa concezione di hardware anche nel mondo PC, non soltanto per quanto riguarda le configurazioni portatili. Il SoC integra vari processori, come la CPU, la GPU e la NPU, oltre alla memoria RAM e alla memoria SSD, riducendo al minimo le latenze delle comunicazioni necessarie al sistema per funzionare.
Il chip design dei sistemi mobile è ormai sempre più orientato verso il SoC, apprezzato anche nelle configurazioni desktop che non ricercano performance estreme. Le ragioni di questa scelta sono facilmente intuibili e si esprimono in termini di efficienza energetica, performance per area, dimensione e costo dei processori. Le ridotte dimensioni dei SoC consentono inoltre una notevole libertà nel design dei dispositivi, che stanno mostrando soluzioni sempre più interessanti per quanto riguarda la dissipazione passiva del calore.
LEGGI ANCHE: Guerra dei microchip: la contromossa cinese all’embargo occidentale
AI PC: la generative AI riscopre il valore del calcolo in locale
Il calcolo dell’intelligenza artificiale non costituisce certo una novità per i dispositivi informatici, né la presenza di processori dedicati a questo scopo. Ne sono la dimostrazione pratica i SoC degli smartphone, che da diverse generazioni integrano delle NPU per varie applicazioni che sfruttano funzioni AI, nell’ambito della fotografia, dell’editing audio-video, della connettività e della sicurezza informatica, giusto per citare gli esempi più diffusi da molti anni.
L’evento “disruptive” è rappresentato dall’intelligenza artificiale generativa, la cui diffusione nei vari verticali dell’industria si riflette in requisiti di calcolo molto eterogenei. Nel white paper Unlocking on-device generative AI with an NPU and heterogeneous computing (febbraio 2024), Qualcomm ha categorizzato gli attuali casi d’uso basati sulla generative AI in tre contesti, che sintetizziamo a seguire.
1 – I casi d’uso “on-demand”, attivati da un utente, che richiedono una risposta immediata:
- acquisizione di foto e video
- creazione e modifica di immagini
- Generazione e modifica di codice
- trascrizione e sintesi di registrazioni audio
- Creazione e riepilogo di testi (e-mail, documenti, ecc.).
2 – I casi d’uso più pesanti, caratterizzati da una lunga durata, come le applicazioni in tempo reale:
- riconoscimento vocale
- giochi e video ad alta risoluzione
- elaborazione audio e video delle videochiamate
- traduzione in tempo reale
3 – I casi d’uso pervasivi, costantemente eseguiti in background:
- assistenti AI predittivi
- personalizzazione dell’IA basata sulla consapevolezza contestuale
- completamento automatico del testo
Secondo Qualcomm, pur basandosi su applicazioni molto differenti, questi casi d’uso basati sulla generative AI presentano due sfide in comune:
- I loro requisiti computazionali sono talmente eterogenei da risultare difficili da soddisfare nei dispositivi “tradizionali”, che utilizzano CPU o GPU generiche.
- Si tratta di processi in continua evoluzione, al punto da richiedere un’architettura di calcolo eterogenea, capace di configurare elaborazioni utilizzando, per ogni applicazione specifica, i vantaggi offerti da ciascun processore.
La soluzione a questo problema è avvenuta introducendo la NPU, un’unità capace di lavorare insieme alla CPU e alla GPU, svolgendo i compiti più comuni delle applicazioni basate sulla generative AI.
Se l’intelligenza artificiale “tradizionale”, utilizzata nell’ambito dei business analytics, aveva spostato l’attenzione sulla grande potenza dei data center in cloud, la generative AI, grazie alle NPU integrate, ripropone la centralità del calcolo in locale, necessario per soddisfare in tempi rapidi e con latenze ridotte le operazioni che svolgiamo nel quotidiano.
Le NPU colmano questo gap generazionale, consentendo ai moderni AI PC di rendere operativo il concetto di heterogeneous computing per ottimizzare le performance, l’efficienza termica e la durata delle batterie dei dispositivi che creano le esperienze basate sull’intelligenza artificiale generativa.
LEGGI ANCHE: AI generativa: un’opportunità da oltre 150 miliardi di dollari per i partner di canale e gli ISV