I dati riguardanti la pandemia globale che ci sta affliggendo da ormai un anno sono raccapriccianti. Nel nostro quotidiano possiamo fare ben poco per contribuire attivamente alla ricerca del vaccino che sconfiggera` finalmente il virus. Ma se ci fosse un modo per contribuire facendo uno sforzo minimo?

Grazie alla Fondazione Vodafone e all’Imperial College of London ognuno di noi può mettere a disposizione due risorse che potrebbero fare la differenza nella ricerca: il tempo e il proprio smartphone. Vediamo come l’app DreamLab utilizza i nostri telefoni per costruire un supercomputer.
Elaborazione dei dati in campo medico
Il campo della ricerca i dati da elaborare sono davvero tanti, un singolo computer impiegherà anni per questo si usano in genere molteplici supercomputer. Nonostante la quantità di calcolatori gia` a disposizione spesso l’elaborazione richiede troppo tempo, per questo la Fondazione Vodafone insieme all’imperial College of London hanno ideato DreamLAb. Quest’app e` in grado di utilizzare il telefono di chi la scarica come una piccola unità di elaborazione: gli ideatori suggeriscono di attivare l’app durante la notte quando il telefono e` in carica per poterne usufruire. All’interno dell’app si puo scegliere a quale progetto contribuire fra i vari disponibili e mettere a disposizione la propria piccola potenza di calcolo per l’elaborazione dei dati. L’app crea appunto un supercomputer virtuale che utilizza gli smartphones connessi come unità elaborative sfruttando il concetto di cloud computing.

Il concetto di cloud computing
Per elaborare grandi quantità di dati e` spesso necessario utilizzare risorse di elaborazione multiple. Il Cloud computing si basa sulla distribuzione di tali risorse all’interno della rete in modo che possano essere rese fruibili dall’utente quando quest’ultimo ne ha bisogno. Distribuire le unità che elaborano i dati alleggerisce nettamente il carico di lavoro e consente di elaborare dataset multipli in parallelo. Questo concetto viene usato da tutte le più grandi compagnie come Netflix o Microsoft per distribuire la potenza di calcolo necessaria per fornire i loro servizi in vari Data Center. Questo tipo di fruizione dei servizi comporta diversi rischi quale l’esposizione dell’utente a violazioni della privacy. L’utente si trova inoltre limitato nel caso i servizi non siano più disponibili, non esiste inoltre uno standard fra i vari fornitori di servizi quindi e` molto difficile la migrazione dei dati da un servizio all’altro.
Distributed computing
Un altro concetto fondamentale di questo progetto e il distributed computing: un sistema distribuito e` composto di unità elaborative facenti parte dello stesso network che comunicano e collaborano fra di loro per raggiungere lo stesso obiettivo. Le caratteristiche principali di un sistema di questo tipo sono la concorrenza dei componenti, la mancanza di un clock globale che rende quindi il sistema completamente asincrono e l’indipendenza rispetto al malfunzionamento di un componente. Nel caso di DreamLab se uno dei cellulari non e` funzionante in un determinato istante il sistema continua a funzionare comunque. Sarebbe impossibile anche la presenza di un clock globale poiché il sistema centrale non conosce l’intervallo di tempo di attività di ciascuno smartphone. Grazie a questo sistema si e` stimato che la stessa mole di dati che può essere elaborata in 3 mesi da un supercomputer viene invece processata in 6 ore da 100000 smartphones connessi permettendo a ciascuno di contribuire alla ricerca su importanti topic medici.