PORTALE DELLA DIDATTICA

Ricerca CERCA
  KEYWORD

Ottimizzazione di un acceleratore hardware per reti neurali spiking per applicazioni low power in ambiente edge.

Parole chiave ACCELERATORI HARDWARE, ACCELERATORI NEUROMORFICI, ACCELERAZIONE FPGA, EDGE COMPUTING, EVENT-DRIVEN, LOW POWER, NEUROMORPHIC COMPUTING, OTTIMIZZAZIONE, RETI NEURALI, RETI NEURALI SPIKING

Riferimenti STEFANO DI CARLO, ALESSANDRO SAVINO

Riferimenti esterni CARPEGNA ALESSIO

Gruppi di ricerca DAUIN - GR-24 - SMILIES - reSilient coMputer archItectures and LIfE Sci

Tipo tesi APPLICATIVA, RICERCA APPLICATA, RICERCA SPERIMENTALE, SVILUPPO HARDWARE

Descrizione Il paradigma del cloud computing, ormai largamente diffuso, in cui un sistema di elaborazione centrale, ad elevate prestazioni, viene utilizzato per processare i dati provenienti da sistemi sparsi, comporta diversi problemi. L’elevato consumo di potenza, l’imprevedibilità della latenza di comunicazione, la violazione della privacy nella trasmissione di dati sensibili verso una macchina remota, la saturazione della banda internet e così via.

Una possibile soluzione consiste nello spostare l’elaborazione dei dati, o parte di essa, direttamente sui dispositivi sparsi. Tale approccio viene chiamato edge computing, ad indicare la dislocazione dell’elaborazione verso il bordo del sistema, dove il centro è rappresentato dai server di elaborazione ad elevate prestazioni.

La sfida maggiore in una soluzione di questo tipo risiede nella scarsità delle risorse computazionali disponibili in dispositivi edge, generalmente microcontrollori, dispositivi mobili e simili. Lo sviluppo di acceleratori hardware dedicati, chiamati anche co-processori, capaci di svolgere uno specifico compito in modo molto efficiente e di alleggerire il carico sul microprocessore (CPU) o microcontrollore (MCU), può aiutare a sopperire a tale mancanza.

Un possibile campo per la creazione e applicazione di tali acceleratori è quello delle reti neurali. Le reti neurali sono generalmente modelli computazionali molto complessi e fortemente parallelizzabili e quindi poco adatti ad essere eseguiti su CPU o MCU, in cui il parallelismo è limitato a pochi core. Per questa ragione, l’accelerazione mediante circuiti hardware dedicati può fare la differenza in termini di prestazioni e consumi di potenza.

Le reti neurali spiking (Spiking Nerual Networks, SNN) sono un particolare tipo di rete neurale direttamente ispirato dal funzionamento di un cervello biologico, in cui i neuroni si scambiano informazioni in forma di impulsi di corrente (spike) di breve durata. Con un design opportuno queste reti possono essere particolarmente adatte ad un’implementazione su circuiti hardware dedicati, con un consumo di potenza e un’occupazione di area molto contenuti rispetto ad altri tipi di rete neurale.

Lo scopo della tesi è quello di modificare un acceleratore hardware per reti neurali spiking, già esistente, per utilizzare un aggiornamento di tipo event-driven. Questo consiste nell’aggiornare lo stato di uno specifico neurone solo quando questo riceve almeno un impulso di ingresso. In assenza di stimoli esterni il neurone non svolge alcun tipo di operazione, minimizzando il consumo di potenza. Al contrario l’acceleratore di partenza ha un aggiornamento di tipo clock-driven, in cui lo stato del neurone viene aggiornato ad ogni colpo di clock, indipendentemente dall’attività degli ingressi. Questo risulta più semplice da un punto di vista computazionale ma molto più dispendioso in termini di consumi.

Il risultato atteso è un confronto completo con l’acceleratore di partenza, in modo da valutare l’overhead hardware dato dall’aggiornamento event-driven, più complesso rispetto al clock-driven, rispetto al risparmio di potenza, per diverse architetture e diversi dataset di ingresso.



Extra
Se il tempo lo permette può essere interessante studiare una soluzione ibrida event/clock-driven. Data la maggior complessità dell’event-driven, infatti, è probabile che l’ottimo in termini di consumi dipenda dal tipo di applicazione e dall’architettura scelta.

Conoscenze richieste Tecniche di progettazione hardware, VHDL.


Scadenza validita proposta 25/10/2023      PROPONI LA TUA CANDIDATURA