Da Google un’intelligenza artificiale di nuovo livello

Da Google un’intelligenza artificiale di nuovo livello

Il colosso non solo ha finalizzato un’AI veloce nella composizione dei chip ma anche migliore nella progettazione hardware

Google afferma di aver creato un’intelligenza artificiale più veloce degli umani nella progettazione di chip. Per progettazione intendiamo la stesura della planimetria di un chip, ovvero la disposizione dei suoi sottosistemi – come i core della CPU e della GPU, la memoria cache, i controller RAM e così via – sul suo die di silicio. Il posizionamento dei minuscoli circuiti elettronici che compongono questi moduli può influenzare il consumo di energia del microchip e la velocità di elaborazione: il cablaggio e l’instradamento del segnale necessari per collegare il tutto contano molto.

Gli ingegneri di Google, Azalia Mirhoseini e Anna Goldie, descrivono un profondo sistema di apprendimento che può creare planimetrie in meno di sei ore mentre può richiedere a ingegneri umani e ai loro strumenti automatizzati mesi per trovare un layout ottimale. Google ha utilizzato questo sistema di intelligenza artificiale per produrre la planimetria di un TPU di nuova generazione: la sua Tensor Processing Unit, che il gigante del web utilizza per accelerare le reti neurali nel suo motore di ricerca, cloud pubblico, AlphaGo e AlphaZero e altri progetti e prodotti.

Un futuro roseo

“Il nostro metodo è stato utilizzato per progettare la prossima generazione di acceleratori di intelligenza artificiale di Google e ha il potenziale per far risparmiare migliaia di ore di lavoro umano per ogni nuova generazione. Inoltre, crediamo che un hardware progettato per l’intelligenza artificiale più potente possa egli stesso velocizzare i progressi nel campo, creando una relazione simbiotica con l’uomo”. Quando si progetta un microprocessore o un acceleratore del carico di lavoro, in genere questo definisce come funzionano i suoi sottosistemi in un linguaggio di alto livello, come VHDL, SystemVerilog e Chisel.

Leggi anche:  Tecnomatic e Holonix, l’Internet delle Cose che contano

Questo codice viene infine tradotto in qualcosa chiamato netlist, che descrive come una raccolta di macro blocchi e celle standard dovrebbe essere collegata tramite fili per eseguire le funzioni del chip. Le celle standard contengono elementi di base come le porte logiche NAND e NOR e i blocchi macro contengono una raccolta di celle standard o altri componenti elettronici per eseguire una funzione speciale, come fornire memoria sul die o un core della CPU. 

I blocchi macro sono quindi notevolmente più grandi delle celle standard. La rete neurale migliora gradualmente le sue capacità di posizionamento man mano che acquisisce esperienza. Cerca di posizionare macro blocchi sul dado, con lo spazio in mezzo riempito con celle standard. Il feedback sul risultato finale viene utilizzato per migliorare il prossimo tentativo di posizionare i blocchi. Un passaggio che viene ripetuto fino a quando il software non prende il pieno controllo e applica le sue capacità a qualsiasi chip, anche se non ne ha mai visto uno simile prima.