Il Calcolo distribuito, ovvero come aiutare la ricerca da casa nostra

Il Giornale Online
Che cos’è il calcolo distribuito e perché tutti noi dovremmo interessarcene? La risposta al quesito è molto semplice e al tempo stesso di grande importanza.
I mezzi informatici, uno strumento fenomenale che ha permesso di accelerare considerevolmente il progresso dell’umanità, sono sempre più fondamentali in qualsivoglia ambito di ricerca scientifica, dalla medicina alla fisica, dalla meteorologia allo studio del cosmo. Sebbene la potenza dei calcolatori vada aumentando di anno in anno, la necessità di capacità di calcolo risulta spesso maggiore di ciò che offrono le possibilità economiche degli enti di ricerca. Come fare per ovviare a questo problema?
Una soluzione c’è, e qui entra in gioco il “calcolo distribuito”.
Dislocati su tutto il pianeta ci sono oltre un miliardo di personal computer – 25 milioni in Italia – che generalmente vengono sfruttati solamente per una minima percentuale delle proprie capacità.
Da qui la geniale idea alla base del “calcolo distribuito”: unire le forze di tanti computer per realizzare potenze di calcolo enormi, sfruttando appunto le risorse inutilizzate dei nostri computer.

Per usare al meglio tutta questa potenza, i ricercatori del progetto Seti dell’Università di Berkeley hanno sviluppato il software BOINC (Berkeley Open Infrastructure for Network Computing), una nuova e potente piattaforma per il calcolo distribuito che sfrutta le risorse dei PC offerte volontariamente.
BOINC.Italy è nato quando alcuni utenti italiani hanno scelto di appoggiare vari progetti che utilizzano questa piattaforma creando un proprio gruppo di calcolo e invitando chiunque voglia a farne parte. Da qualche mese inoltre, come sottogruppo di BOINC.Italy è nato “Lessinia” con l’intento e la speranza di ricevere utenti anche da questo bellissimo territorio da sempre attento alle innovazioni.
Ma ora vediamo in dettaglio di cosa si tratta.


Il processo con cui funzionano i progetti di calcolo distribuito è semplice e non ha bisogno di alcuna conoscenza tecnica per contribuirvi. La prima volta che si avvia BOINC viene chiesto a quale progetto vogliamo aderire. Se ne può scegliere uno o anche più di uno. I progetti a cui si può aderire sono svariati e sono davvero per tutti i gusti. Per esempio: Docking@home, un progetto di ricerca medica il cui scopo è lo sviluppo di nuovi farmaci per malattie come l'HIV; Einstein@home che usa le capacità di calcolo dei computer donate dai volontari di tutto il mondo per elaborare i dati provenienti dai rilevatori di onde gravitazionali per analizzare la struttura dell’Universo; PrimeGrid, un progetto di ricerca sui numeri primi o ancora Climate Prediction, un progetto di calcolo che sfrutta i tempi morti del nostro processore per studiare l'evoluzione del clima terrestre. Insomma, BOINC va a toccare tutti i rami della scienza dando davvero un grande apporto agli enti di ricerca.

Dopo aver scelto il nostro progetto tutto avviene in modo automatico. Ogni progetto scaricherà sul PC il proprio CLIENT, cioè il programma che si occuperà di elaborare i dati. Il programma BOINC si connetterà ad Internet, scaricherà dei pacchetti di dati (chiamati Work Units o anche tasks, abbreviato WUs), li farà elaborare al nostro PC tramite il client del progetto e, completata la Work Unit, provvederà a riportare i risultati e ad acquisire nuove WUs. Durante l’elaborazione non è necessario restare connessi ad Internet. È possibile elaborare questi dati sul proprio PC quando si vuole, in generale in ogni attimo durante il quale il PC, e in particolare il processore, non viene utilizzato in nessuna operazione o compito gravoso. Si può utilizzare la potenza di calcolo del proprio computer per elaborare mentre si naviga, si scrive una relazione, si legge la posta e persino mentre si guarda un film.

È possibile spegnere il proprio computer in qualsiasi momento, l’elaborazione dei dati si interrompe e riprende automaticamente dal punto in cui si era fermata non appena il PC viene riacceso.
L’elaborazione avviene a priorità bassa, il che significa che non si noterà nessun rallentamento del PC in quanto, quando gli altri programmi richiedono l’uso del processore, BOINC “si fa da parte” e concede la precedenza.
Durante l'elaborazione il processore lavora al pieno delle sue capacità. Questo non deve spaventarvi: i computer sono fatti apposta per lavorare e non si danneggiano se le temperature restano nella norma. Nessun pericolo quindi a meno che non abbiate modificato qualcosa in modo improprio o non abbiate piazzato il PC di fianco al termosifone.

Per concludere si devono fare alcune considerazioni. Chi aderisce a un progetto di ricerca non lo fa per ricevere premi o denaro ma per poter dire di aver dato una mano. Tanti più pacchetti di dati elaboreremo, tanto più saremo utili alla ricerca.
Tuttavia è importante sottolineare che aderendo a un progetto di “calcolo distribuito” non prenderemo nessun impegno vincolante: non ci sono risultati minimi da raggiungere. Chiunque potrà contribuire in maniera spontanea alla ricerca scientifica, lo farà per il tempo che vorrà e con quanti computer vorrà. Alla fine ci sembrerà come una sciocchezza da quant'è facile ma il nostro contributo avrà un valore ben più importante, lo avremo fatto per noi stessi quanto per gli altri. Il “calcolo distribuito” va interpretato come una nuova forma di beneficenza o di volontariato, e una volta iniziato sarà difficile non appassionarsi ad esso.

Paolo Landi e Jacopo Grossule