Con questo articolo diamo un’infarinatura di quello che sono le FPGA e l’architettura Project Brainwave in Azure, entrambi elementi utili, talvolta fondamentali, per velocizzare tutto il sistema di AI su cui lavoriamo.
Scusatemi per la semplificazione utilizzata nell’introduzione. 😉
FPGA
Parliamo di un dispositivo che contiene una matrice di blocchi di logica programmabile e una gerarchia di interconnessioni riconfigurabili che consentono di configurare i blocchi in modi diversi dopo la produzione.
I dispositivi FPGA offrono una combinazione di programmabilità e prestazioni superiore agli altri chip:
- Le CPU sono processori per utilizzo generico. Le prestazioni delle CPU non sono ideali per l’elaborazione di video e immagini.
- Le unità di elaborazione grafica (GPU)offrono capacità di elaborazione parallela e rappresentano una scelta comune per i calcoli di intelligenza artificiale. L’elaborazione parallela con GPU consente un rendering delle immagine più veloce rispetto alle CPU.
- Gli Application Specific Integrated Circuit (ASIC), come le unità del processore TensorFlow di Google, sono circuiti personalizzati. Nonostante questi chip offrano la massima efficienza, gli ASIC non sono flessibili.
- I dispositivi FPGA, ad esempio quelli disponibili in Azure, assicurano prestazioni simili a quelle degli ASIC e la flessibilità di essere riconfigurati in un secondo momento.
I dispositivi FPGA sono ora presenti in ogni nuovo server Azure. Microsoft sta già utilizzando i dispositivi FPGA per la classificazione delle ricerche Bing, la valutazione della rete neurale profonda (DNN) e l’accelerazione SDN. Queste implementazioni FPGA riducono la latenza e mantengono libere le CPU per altre attività.
Project Brainwave in Azure
Project Brainwave è un’architettura hardware progettata sui dispositivi FPGA Intel e usata per accelerare i calcoli AI in tempo reale.
Con questa architettura economica abilitata per FPGA, una rete neurale con training può essere eseguita alla velocità massima e con una latenza più bassa.
La tecnologia Project Brainwave è in grado di parallelizzare le reti neurali profonde con training preliminare tra i dispositivi FPGA, in modo da ridimensionare il servizio.
- Negli scenari seguenti vengono usati i dispositivi FPGA sull’architettura Project Brainwave:
- Sistema di ispezione ottica automatizzato. Vedere Real-time AI: Microsoft announces preview of Project Brainwave(AI in tempo reale: Microsoft annuncia l’anteprima di Project Brainwave).
- Mapping della copertura del suolo. Vedere How to Use FPGAs for Deep Learning Inference to Perform Land Cover Mapping on Terabytes of Aerial Images(Come usare i dispositivi FPGA per inferenze di apprendimento approfondito per eseguire il mapping della copertura del suolo su terabyte di immagini aeree).