Cloud computing: il servizio BlastFunction

Un servizio serverless che offre la possibilità di accelerare su FPGA specifiche funzioni

Il cloud computing sta seguendo un trend in forte crescita, ricoprendo un ruolo sempre più importante per quanto riguarda tutto il ciclo di sviluppo e mantenimento di infrastrutture su vasta scala. Questo rappresenta una componente fondamentale per la quasi totalità dei servizi web che oggi tutti utilizziamo: un esempio sono le applicazioni di video-chat che, probabilmente, abbiamo largamente utilizzato durante il difficile periodo della quarantena.


Non tutti i tipi di calcolo, però, sono efficientemente eseguiti dai classici processori: benché i fornitori cloud mettano a disposizione processori ben più potenti di quelli montati sui comuni portatili, alle volte non basta per raggiungere le prestazioni desiderate e sono richieste soluzioni diverse per scavalcare questo limite. Per questo, sistemi di computazione eterogenei, i quali coinvolgono l’ausilio di specifici acceleratori, dimostrano di essere una valida alternativa in grado di soddisfare richieste di prestazioni più stringenti in termini di latenza.  


Una possibilità è rappresentata dalle FPGA (Field Programmable Gate Arrays), degli acceleratori hardware riconfigurabili
che in molti casi permettono di migliorare il rapporto tra le prestazioni e consumi. Dal punto di vista, invece, del proprietario dell’infrastruttura, quando una risorsa è allocata ma solo parzialmente sfruttata, si traduce in un costo superfluo proporzionale alla parte di risorsa inutilizzata. Siccome le richieste da parte degli utenti del servizio spesso non sono prevedibili, né in mole né in frequenza, il problema delle risorse parzialmente utilizzate può rivelarsi insormontabile. Un’ottima tecnica per massimizzare l’utilizzo di un’FPGA è quella di condividere la risorsa tra più utenti. 


Al NECSTLab abbiamo creato BlastFunction quale soluzione ai temi precedentemente illustrati. BlastFunction è un servizio Serverless che offre la possibilità di accelerare su FPGA specifiche funzioni, occupandosi in modo trasparente della completa gestione di macchine e FPGA condivise. Il tipo di condivisione della risorsa impiegata da BlastFunction è la condivisione nel tempo (time sharing): immaginando di suddividere un lasso di tempo in più parti, ognuna di esse è dedicata ad un singolo utente; sfruttando questa tecnica possiamo riorganizzare il carico di richieste per massimizzare l’utilizzo dell’FPGA, garantendo contemporaneamente le prestazioni richieste ai vari utenti.  


Gli utenti di BlastFunction specificano le singole funzioni che desiderano accelerare in hardware, successivamente possono inviare i dati da processare e ricevere dunque i risultati delle computazioni. BlastFunction raccoglie le richieste dai vari utenti e, in base ad esse, predispone e configura una quantità di servizi necessaria a garantire gli accordi di servizio; i carichi di dati da processare provenienti dai vari utenti vengono suddivisi tra le risorse disponibili.  


Stiamo lavorando per fare in modo che anche il numero di macchine e di FPGA venga istanziato dinamicamente
, seguendo quindi l’andamento delle richieste in entrata in modo che l’infrastruttura stessa si adatti “a fisarmonica” sulla base delle esigenze in quel momento. Per effettuare ciò ci stiamo affidando ai servizi cloud di Amazon (AWS), i quali ci permetteranno di ridimensionare BlastFunction su un numero maggiore di risorse. Tramite AWS abbiamo a disposizione un parco macchine dotate di FPGA potenzialmente inesauribile, ognuna di esse può essere scelta in base al tipo e alle capacità computazionali secondo le nostre necessità.


Manageritalia collabora con NECSTLab per far conoscere questa Silicon Valley italiana e avere dalla loro voce un polso su quell’innovazione che partendo dall’Università impatta, e deve farlo sempre di più, sulla crescita della nostra economia, sul nostro lavoro e sulla vita di tutti i giorni. Un viaggio che dobbiamo fare tutti insieme. Stay tuned!

Facebook
LinkedIn
WhatsApp

Potrebbero interessarti anche questi articoli

Cerca