Che cos'è un'unità di elaborazione neurale (NPU)?

Sistema di neuroni con connessioni luminose su sfondo nero

Che cos'è un'unità di elaborazione neurale (NPU)?

Un'unità di elaborazione neurale (NPU) è un microprocessore informatico specializzato progettato per imitare la funzione di elaborazione del cervello umano. Sono ottimizzati per reti neurali di intelligenza artificiale (IA), attività e applicazioni di deep learning e machine learning.

A differenza delle unità di elaborazione centrale (CPU) o delle unità di elaborazione grafica (GPU) generiche, le NPU sono personalizzate per accelerare le attività e i workload di AI, come il calcolo dei livelli di rete neurale composti da matematica scalare, vettoriale e tensoriale.

Conosciute anche come AI chip o AI accelerator, le NPU vengono generalmente utilizzate all'interno di architetture informatiche eterogenee che combinano più processori (ad esempio, CPU e GPU). I data center su larga scala possono utilizzare NPU autonome collegate direttamente alla scheda madre di un sistema. Tuttavia, la maggior parte delle applicazioni di consumo, come smartphone, dispositivi mobili e laptop, combinano l'NPU con altri coprocessori su un singolo microchip a semiconduttore noto come system-on-chip (SoC).

Integrando una NPU dedicata, i produttori sono in grado di offrire ai dispositivi app di AI generativa in grado di elaborare applicazioni e workload di AI e algoritmi di machine learning in tempo reale con un consumo energetico relativamente basso e un throughput elevato.     

Le ultime notizie nel campo della tecnologia, supportate dalle analisi degli esperti

Resta al passo con le tendenze più importanti e interessanti del settore relative ad AI, automazione, dati e oltre con la newsletter Think. Leggi l' Informativa sulla privacy IBM.

Grazie per aver effettuato l'iscrizione!

L'abbonamento sarà fornito in lingua inglese. Troverai un link per annullare l'iscrizione in tutte le newsletter. Puoi gestire i tuoi abbonamenti o annullarli qui. Per ulteriori informazioni, consulta l'Informativa sulla privacy IBM.

Caratteristiche principali delle NPU

Le unità di elaborazione neurale (NPU) sono adatte ad attività che richiedono elaborazione parallela a bassa latenza, come l'elaborazione di algoritmi di deep learning, riconoscimento vocale, elaborazione del linguaggio naturale, elaborazione di foto e video e rilevamento di oggetti

Le caratteristiche principali delle NPU includono quanto segue:

  • Elaborazione parallela: le NPU possono suddividere problemi più grandi in componenti per la risoluzione multitasking dei problemi. Questo consente al processore di eseguire più operazioni di rete neurale contemporaneamente. 
  • Aritmetica a bassa precisione: le NPU spesso supportano operazioni a 8 bit (o meno) per ridurre la complessità computazionale e aumentare l'efficienza energetica. 
  • Memoria a larghezza di banda elevata: molte NPU sono dotate di memoria on-chip ad alta larghezza di banda per eseguire in modo efficiente attività di elaborazione dell'IA che richiedono set di dati di grandi dimensioni.
  • Accelerazione hardware: i progressi nella progettazione delle NPU hanno portato all'incorporazione di tecniche di accelerazione hardware, come architetture di array sistolici o una migliore elaborazione tensoriale.  

Come funzionano le NPU

Basate sulle reti neurali del cervello, le unità di elaborazione neurale (NPU) funzionano simulando il comportamento dei neuroni umani e delle sinapsi a livello del circuito. Ciò consente l'elaborazione di set di istruzioni di deep learning in cui un'istruzione completa l'elaborazione di un set di neuroni virtuali.

A differenza dei processori tradizionali, le NPU non sono costruite per calcoli precisi. Le NPU invece sono appositamente progettate per le funzioni di risoluzione dei problemi e possono migliorare nel tempo, imparando da diversi tipi di dati e input. Sfruttando il machine learning, i sistemi di AI che incorporano le NPU possono fornire soluzioni personalizzate più velocemente, senza la necessità di ulteriori programmazioni manuali.

Come caratteristica, le NPU offrono un'elaborazione parallela superiore e sono in grado di accelerare le operazioni AI attraverso core semplificati ad alta capacità che sono liberi dall'eseguire più tipi di attività. Una NPU include moduli specifici per moltiplicazione e addizione, funzioni di attivazione, operazioni sui dati 2D e decompressione. Il modulo specializzato di moltiplicazione e addizione viene utilizzato per eseguire operazioni relative alle applicazioni di reti neurali, come il calcolo della moltiplicazione e dell'addizione di matrici, la convoluzione, il prodotto scalare e altre funzioni. 

Mentre i processori tradizionali richiedono migliaia di istruzioni per completare questo tipo di elaborazione dei neuroni, una NPU potrebbe essere in grado di completare un'operazione simile con una sola. Una NPU integrerà anche storage e il calcolo tramite pesi sinaptici, una variabile computazionale fluida assegnata ai nodi che indica la probabilità di un risultato "corretto" o "desiderato" che può adattarsi o "imparare" nel tempo, portando a una migliore efficienza operativa.

Sebbene lo sviluppo delle NPU continui ad evolversi, i test hanno dimostrato che, a parità di consumo energetico, alcune prestazioni delle NPU sono oltre 100 volte migliori di una GPU comparabile. 

Smart Talks with IBM

Come l'infrastruttura alimenta l'era dell'AI

Scopri come le funzionalità hardware supportano le funzioni delle matrici necessarie per eseguire modelli linguistici di grandi dimensioni e approfondisci alcuni esempi creativi per mettere l'AI al tuo servizio, dalla tua banca al bar dietro l'angolo.

Principali vantaggi delle NPU

Le unità di elaborazione neurale (NPU) non sono progettate, né previste, per sostituire le CPU e le GPU tradizionali. Tuttavia, l'architettura di una NPU migliora il design di entrambi i processori per fornire parallelismo e apprendimento automatico senza precedenti e più efficienti. In grado di migliorare le operazioni generali (ma più adatte per determinati tipi di attività generali), se combinate con CPU e GPU, le NPU offrono diversi vantaggi preziosi rispetto ai sistemi tradizionali. 

I vantaggi principali sono i seguenti:

  • Elaborazione parallela: come detto, le NPU possono suddividere problemi più grandi in componenti per la risoluzione dei problemi multitasking. La chiave è che, sebbene le GPU eccellano anche nell'elaborazione parallela, la struttura unica di una NPU può superare una GPU equivalente con un consumo energetico ridotto e un'impronta inferiore. 
  • Efficienza migliorata: mentre le GPU sono spesso utilizzate per il calcolo ad alte prestazioni e compiti di AI, le NPU possono eseguire un'elaborazione parallela simile con un'efficienza energetica molto migliore. Poiché AI e altri sistemi di calcolo ad alte prestazioni diventano sempre più comuni e richiedono più energia, le NPU offrono una soluzione preziosa per ridurre il consumo energetico critico. 
  • Trattamento dei dati multimediali in tempo reale: le NPU sono progettate per trattare e rispondere meglio a una gamma più ampia di input, tra cui immagini, video e voce. L'aumento di applicazioni come la robotica, i dispositivi Internet of Things (IoT) e i dispositivi indossabili con NPU può fornire feedback in tempo reale, ridurre l'attrito operativo e fornire feedback critici e soluzioni quando i tempi di risposta sono più importanti. 

NPU, GPU e CPU

Nel mondo dell'informatica classica, l'unità di elaborazione centrale (CPU) è considerata il "cervello" del computer. La CPU elabora la maggior parte delle attività informatiche tradizionali ed è responsabile di un'ampia gamma di potenziali applicazioni. Sebbene ne esistano molti tipi diversi, generalmente tutte le CPU eseguono le operazioni in ordine lineare, rispondendo alle richieste nell'ordine in cui arrivano. 

Dagli anni '50 agli anni '90, le CPU hanno subito il peso di praticamente tutte le elaborazioni informatiche, l'esecuzione di istruzioni per eseguire programmi, controllare i sistemi e gestire gli input/output (I/O).

Le applicazioni esigenti hanno spinto generazione dopo generazione di progetti di CPU ai limiti delle possibilità dell'hardware, spesso causando rallentamenti significativi o addirittura guasti del sistema. Ma con l'avvento dei giochi per personal computer e della progettazione assistita (CAD) negli anni '80, il settore aveva bisogno di una soluzione più veloce ed efficiente per il rendering della grafica computerizzata. 

L'unità di elaborazione grafica (GPU) è stata inizialmente creata per scaricare le impegnative attività di elaborazione delle immagini dalla CPU principale. Mentre le GPU tendono a utilizzare meno core per eseguire operazioni lineari, le GPU hanno le caratteristiche di centinaia o migliaia di core con la capacità di eseguire l'elaborazione parallela, un processo in cui le attività di grandi dimensioni vengono suddivise in problemi più piccoli che possono essere risolti contemporaneamente da più processori e/o core. 

Inizialmente sviluppato per gestire le esigenze di elaborazione di video e immagini, le funzionalità di elaborazione parallela delle GPU hanno reso l'hardware particolarmente adatto ad altre applicazioni informatiche impegnative, come attività relative alla blockchain e AI. Sebbene le GPU non siano l'unico tipo di processore in grado di eseguire l'elaborazione parallela o il calcolo parallelo, sono adatte per il parallelismo. Tuttavia, anche le GPU hanno dei limiti e, in genere, richiedono un consumo di energia estremamente costoso per eseguire operazioni più impegnative. Con le GPU, un aumento delle prestazioni comporta un aumento dei costi energetici. 

Le NPU e altri acceleratori AI offrono alternative più efficienti. Incorporando e migliorando il parallelismo avanzato delle GPU, le NPU specificamente progettate per le operazioni di AI forniscono prestazioni elevate con un consumo energetico inferiore (e il vantaggio aggiuntivo di un'impronta ridotta).

Confronto dei processori

  • Unità centrali di elaborazione: il "cervello" del computer. Le CPU in genere allocano circa il 70% dei loro transistor interni per costruire la memoria cache e fanno parte dell'unità di controllo di un computer. Contengono relativamente pochi core, utilizzano architetture di serial computing per la risoluzione lineare dei problemi e sono progettati per operazioni di controllo logico precise. 
  • Unità di elaborazione grafica: inizialmente sviluppate per gestire l'elaborazione di immagini e video, le GPU contengono molti più core rispetto alle CPU e utilizzano la maggior parte dei loro transistor per costruire più unità computazionali, ciascuna con bassa complessità computazionale, consentendo un'elaborazione parallela avanzata. Adatte a workload che richiedono trattamento dei dati, le GPU hanno trovato una notevole utilità aggiuntiva nei big data, nei centri server back-end e nelle applicazioni blockchain.
  • Unità di elaborazione neurale: basandosi sul parallelismo delle GPU, le NPU utilizzano un'architettura informatica progettata per simulare i neuroni del cervello umano per fornire prestazioni elevate altamente efficienti. Le NPU utilizzano pesi sinaptici per integrare sia lo storage che le funzioni di calcolo, fornendo a volte soluzioni meno precise a una bassa latenza. Mentre le CPU sono progettate per un calcolo preciso e lineare, le NPU sono progettate per il machine learning, con conseguente miglioramento del multitasking, dell'elaborazione parallela e della capacità di regolare e personalizzare le operazioni nel tempo senza la necessità di ulteriore programmazione. 

Casi d'uso delle NPU

Come tecnologia emergente, molti dei principali produttori di computer e hardware, tra cui Microsoft, Intel, Nvidia, Qualcomm e Samsung, offrono unità di elaborazione neurale (NPU) autonome o varianti integrate, come Apple Neural Engine.

L'integrazione delle NPU nell'elettronica di consumo offre una vasta gamma di vantaggi, come un migliore riconoscimento delle immagini e l'ottimizzazione per le fotocamere abilitate all'AI per sfocare meglio lo sfondo durante le videochiamate. Di seguito sono riportate alcune applicazioni aggiuntive per le NPU.

Intelligenza artificiale e modelli linguistici di grandi dimensioni

Come tipo di acceleratore AI, le NPU sono progettate appositamente per migliorare le prestazioni dei sistemi di AI e ML, come le reti neurali. Complementando le GPU, il parallelismo potenziato delle NPU offre miglioramenti drammatici per i modelli linguistici di grandi dimensioni che richiedono un'elaborazione adattiva a bassa latenza per interpretare i segnali multimediali, eseguire il riconoscimento vocale e produrre il linguaggio naturale e l'arte utilizzati in strumenti come gli ai chatbot e le applicazioni di immagini e video di AI generativa.  

Dispositivi Internet of Things (IoT)

Con eccezionali capacità di elaborazione parallela e auto-apprendimento, le NPU sono adatte per dispositivi IoT in rete, come dispositivi indossabili, assistenti vocali ed elettrodomestici intelligenti. 

Data center

AI e machine learning sono stati un grande vantaggio per i data center che vogliono ottimizzare le risorse energetiche. Le NPU ad alte prestazioni e ad alta efficienza energetica offrono un enorme valore per i data center offrendo una migliore gestione delle risorse per il cloud computing

Veicoli a guida autonoma

I veicoli autonomi, come i droni o le auto e i camion a guida autonoma, traggono grandi vantaggi dalle capacità di elaborazione in tempo reale delle NPU, che consentono una correzione della rotta più rapida e migliore in base all'input del sensore multimediale. Con un'elaborazione parallela senza pari, le NPU possono aiutare i veicoli autonomi a interpretare ed elaborare input in rapido sviluppo, come segnali stradali, schemi di traffico e persino ostacoli imprevisti.

Edge computing ed edge AI

Sebbene il cloud computing offra soluzioni avanzate di dati e risorse off-site per IoT, dispositivi intelligenti e altri dispositivi di personal computing, l'edge computing e l'edge AI cercano di avvicinare fisicamente i dati e le risorse di calcolo critici agli utenti per ridurre la latenza, attenuare il consumo energetico e rafforzare la privacy. Poiché richiedono meno energia e offrono un'impronta fisica ridotta, le NPU stanno diventando un componente prezioso dell'edge computing e dell'AI sui dispositivi. 

Robotica

Le NPU, esperte nella gestione di attività che richiedono machine learning e computer vision, offrono un supporto fondamentale allo sviluppo del settore della robotica. La robotica basata sull'AI, dagli assistenti domestici agli strumenti chirurgici automatizzati, si affida alle NPU per sviluppare la capacità di rilevare, apprendere e reagire ai loro ambienti. 

Soluzioni correlate
Analytics dei dati e dell'AI 

Usa framework e strumenti open source per applicare l'AI e il machine learning ai dati aziendali più preziosi sui mainframe IBM zSystems.

Esplora IBM Z
Soluzioni per l'infrastruttura AI

IBM fornisce soluzioni per l'infrastruttura AI per accelerare l'impatto su tutta l'azienda con una strategia hybrid by design.

Scopri le soluzioni per l'infrastruttura AI
Consulenza e servizi sull'AI

Sblocca il valore dei dati aziendali con IBM Consulting e crea un'organizzazione basata su insight in grado di generare vantaggi aziendali.

Esplora i servizi AI
Prossimi passi

Potenzia i tuoi workload AI con un'infrastruttura ottimizzata per prestazioni, affidabilità e integrazione hybrid cloud, progettata per le reali esigenze aziendali.

Esplora le soluzioni per l'infrastruttura AI Ottieni maggiori informazioni