Volunteer computing
Il Volunteer computing è un tipo di calcolo distribuito in cui i proprietari di computer possono donare le loro risorse di calcolo (potenza di elaborazione, archiviazione e connessione Internet),relativamente ai tempi di inattività di tali risorse, a uno o più progetti di ricerca. Le apparecchiature messe a disposizione, desktop, computer portatili, tablet e telefoni cellulari, opportunamente collegati tra loro, finiscono così di costituire l'equivalente di un unico, enorme supercomputer virtuale in modo che calcoli che avrebbero richiesto decine di migliaia di anni di elaborazione su una singola macchina possono essere processati in pochi mesi. Da un punto di vista operativo nel volunteer computing un problema complesso è suddiviso in numerosi task che sono risolti da uno o più computer alla volta
Storia
Il primo progetto ascrivibile al volunteer computing, termine coniato da da Luis F. G. Sarmenta, è stato il Great Internet Mersenne Prime Search avviato nel gennaio 1996. In seguito nel 1997 e 1998 furono lanciati diversi progetti di ricerca accademici, tra cui Bayanihan, [2] Popcorn, [3] Superweb, [4] e Charlotte, sviluppati in Java. Nel 1999, furono lanciati i progetti SETI@home e Folding@home, che a seguito della relativa copertura mediatica attirarono e continuano ad attirare centinaia di migliaia di volontari. Tra il 1998 e il 2002, furono anche fondate diverse società, quali Popular Power, Entropia, and United Devices, con modelli di business che coinvolgevano il volunteer computing. Nel 2002, fu lanciato il progetto Berkeley Open Infrastructure for Network Computing (BOINC) presso lo Space Sciences Laboratory dell'Università della California, Berkeley su finanziamenti della National Science Foundation con lo scopo di fornire per il volunteer computing un completo sistema middleware, comprendente un client, un client GUI , un sistema di runtime, software per i server e software di implementazione del sito web del progetto. Il primo progetto basato su BOINC, lanciato nel 2004 dallo Scripps Research Institute, fu Predictor@home seguito successivamente da SETI@home e ClimatePrediction.net. Numerosi nuovi progetti basati su BOINC sono stati creati nel corso degli anni seguenti, tra cui [[Rosetta@home, Einstein@home, e AQUA@home. Nel corso del 2007 anche il progetto World Community Griddella IBM ha iniziato ad utilizzare BOINC abbandonando la piattaforma United Devices.
Inconvenienti per i partecipanti
- Aumento del consumo energetico: derivato dal fatto che una CPU utilizza generalmente più energia quando è attiva rispetto a quando è inattiva. Anche il desiderio di partecipare da parte del volontario che può sospendere le funzionalità di risparmio energetico o lasciando il computer acceso anche la notte porta ad un complessivo maggior dispendio energetico. Inoltre, se il computer non può raffreddarsi adeguatamente, il carico sulla CPU aggiunto del volontario può causarne surriscaldamento.
- Diminuzione delle prestazioni del PC: se l'applicazione di volunteer computing viene eseguito mentre il computer è in uso, può influire sulle prestazioni del PC a causa del maggiore utilizzo della CPU, della cache, memoria locale, e connessione di rete. L’aumento del consumo energetico può essere risolto in qualche misura impostando un'opzione per limitare la percentuale di utilizzo del processore utilizzato dal client disponibile in alcuni software client.