I chip noti con la sigla TPU (Tensor Processing Unit) sono processori specializzati progettati da Google per accelerare la gestione e l’elaborazione dei carichi di lavoro nell’ambito del deep learning. Le TPU sono progettate e sviluppate per far funzionare algoritmi di apprendimento automatico che richiedono una grande quantità di operazioni matematiche su tensori, strutture dati multidimensionali utilizzate appunto nel deep learning.
Lavorano con il framework per il machine learning Google TensorFlow ma possono eventualmente essere utilizzate anche con altri strumenti come PyTorch e MXNet. Le TPU sono state utilizzate da Google per migliorare le prestazioni di servizi come la ricerca, Google Photos, Google Assistant e molti altri.
Con l’espressione domain specific architecture (DSA) Google si riferisce a una famiglia di architetture hardware personalizzate progettate e implementate dall’azienda di Mountain View al fine di gestire specifici carichi di lavoro nell’elaborazione dei dati. Questi carichi di lavoro possono includere l’elaborazione di immagini, il machine learning, la ricerca Web, la gestione del cloud e molti altri
Obiettivo principale di DSA è quello di migliorare le prestazioni e l’efficienza energetica dei servizi di Google attraverso l’utilizzo di hardware specializzato che si adatta ai loro specifici requisiti di elaborazione dei dati.
Le architetture DSA includono TPU, per il deep learning, ASIC (Application-Specific Integrated Circuit) per l’elaborazione di immagini e processori “custom” specializzati nelle attività di ricerca sul Web.
In un documento appena pubblicato gli ingegneri Google descrivono il funzionamento delle TPU v4 ovvero della più recente architettura DSA e di come sia utilizzata per allestire supercomputer di nuova generazione per gestire i nuovi modelli.
Google spiega innanzi tutto perché ha scelto switch a circuito ottico (OCS) che permettono di riconfigurare dinamicamente la topologia dell’interconnessione per migliorare scala, disponibilità, utilizzo, modularità, distribuzione, sicurezza, alimentazione e prestazioni. Molto più economici, a basso consumo energetico e veloci rispetto a InfiniBand (tecnologia di interconnessione ad alta velocità e a bassa latenza utilizzata per collegare tra loro i componenti dei cluster di calcolo ad alte prestazioni o HPC come server, soluzioni di storage avanzate e GPU), gli OCS sono sembrati la scelta più efficace.
Ogni TPU v4 include SparseCores, processori specializzati che accelerano i modelli usando contestualmente un approccio molto parsimonioso in termini di spazio occupato e potenza richiesta.
Secondo i tecnici di Google, le TPU v4 sarebbero fino a 1,7 volte più potenti e fino a 1,9 più efficienti dal punto di vista energetico rispetto a NVidia A100.
NVidia A100 è una GPU per l’elaborazione ad alte prestazioni nell’ambito del machine learning, dell’intelligenza artificiale e delle altre applicazioni di calcolo particolarmente gravose dal punto di vista computazionale. La GPU A100 è basata sull’architettura Ampere di Nvidia, utilizza un processo costruttivo a 7 nanometri e memoria HBM2 (High Bandwidth Memory) con una capacità di diverse decine di gigabyte a seconda del modello.
Nell’immagine (fonte: Google) alcuni rack composti da TPU v4 utilizzati per comporre un supercomputer da 4.096 chip.
I supercomputer Google di ultima generazione sarebbero in uso già dal 2020 e risulterebbero 3,1 volte più potenti dei loro predecessori basati su TPU v3.
Ogni supercomputer moderno, inoltre, monterebbe 4.096 chip TPU v4 al suo interno.
I modelli di linguaggio naturale di grandi dimensioni (LLM) combinano miliardi di parametri per essere in grado di comprendere l’input dell’utente presentato sotto forma di testo normale, immagini o anche suono e offrire risposte simili a quelle umane: Google ha dichiarato di aver utilizzato TPU v4 per addestrare il suo chatbot Bard.
Le immagini utilizzate per l’articolo sono tratte dal documento condiviso da Google.