Berkeley Open Infrastructure for Network Computing

Da Wikipedia, l'enciclopedia libera.
(Reindirizzamento da BOINC)
BOINC
Logo
BOINC Manager

BOINC Manager
Sviluppatore Università della California
Ultima versione 7.2.42 (28 febbraio 2014)
Ultima beta 7.3.11 (10 marzo 2014)
Sistema operativo Linux
Microsoft Windows
Mac OS X
Android
Linguaggio C++
Genere Calcolo distribuito
Licenza LGPL[1]
(Licenza libera)
Sito web boinc.berkeley.edu

Il Berkeley Open Infrastructure for Network Computing (BOINC) è un sistema non-commerciale per il calcolo distribuito volontario.

È stato sviluppato originariamente per sostenere il progetto SETI@home, prima di diventare utile come base per altre applicazioni distribuite in svariate aree scientifiche come la matematica, la medicina, la chimica la biologia molecolare, l'astrofisica e la climatologia. Lo scopo di BOINC è quello di rendere disponibile ai ricercatori l'enorme potenza di calcolo dei personal computer sparsi per il mondo.

Il framework è supportato da diversi sistemi operativi, come Microsoft Windows e sistemi Unix-like tra cui Linux, Mac OS X, FreeBSD ed Android. BOINC è un software libero rilasciato sotto licenza GNU Lesser General Public License.[1]

Storia[modifica | modifica sorgente]

Il progetto BOINC è iniziato nel febbraio 2002 e la prima versione è stata rilasciata il 10 aprile 2002. Il primo progetto BOINC-based è stato Predictor@home, partito il 9 giugno 2004. BOINC è stato sviluppato da un team presso lo Space Sciences Laboratory della University of California, Berkeley diretto da David Anderson, il quale dirige anche SETI@home: infatti venne originariamente sviluppato per sostenere il progetto SETI@home. È finanziato dalla National Science Foundation attraverso i premi SCI/0221529,SCI/0438443 e SCI/0721124.

Il client originale di SETI era un software non-BOINC esclusivo per SETI@home. Come primo dei progetti di grid computing volontari, non era stato progettato con un alto livello di sicurezza. Alcuni partecipanti al progetto cercarono di manipolare i dati per ottenere "crediti", mentre altri ancora inviarono lavori completamente falsi; BOINC è stato progettato, in parte, per combattere queste falle nella sicurezza.

Alla stregua di una piattaforma di “quasi-supercomputer”, BOINC conta circa 277.962 volontari, 405.666 computer attivi (hosts) intorno al mondo che elaborano una media di 6,109 PetaFLOPS (alla data del 12 giugno 2012).[2]

Progetto e struttura[modifica | modifica sorgente]

BOINC è progettato per essere una struttura libera per chiunque voglia iniziare un progetto di calcolo volontario. La maggior parte dei progetti BOINC sono nonprofit e dipendono molto, se non completamente, da volontari.

In sostanza BOINC è un software che può sfruttare le CPU e GPU dei computer, quando queste non vengono utilizzate, per effettuare calcoli scientifici – in sintesi, quando una persona non usa il proprio computer, allora lo usa BOINC. Alla fine del 2008, il sito ufficiale di BOINC annunciò che NVIDIA aveva sviluppato un sistema chiamato CUDA che utilizza le GPU per calcoli scientifici. Con l'aiuto di NVIDIA, alcuni dei progetti basati su BOINC (i.e., SETI@home, MilkyWay@home) hanno adesso applicazioni che girano su GPU NVIDIA utilizzando CUDA. All'inizio di ottobre, BOINC aggiunse anche il supporto per le GPU di ATI/AMD. Queste applicazioni girano dalle 2 alle 10 volte più velocemente di quelle basate su versioni solamente per CPU.

BOINC è formato da una parte server e una parte client che comunicano tra loro per distribuire, elaborare e inviare i risultati delle WU (Working Units).

Server[modifica | modifica sorgente]

Immagine del progetto Seti@home

La parte centrale dell'applicazione è composta dalla parte "server", i cui vari compiti possono essere eseguiti su una o più macchine in modo da poter gestire progetti anche molto grandi. Il server stesso non si occupa di eseguire calcoli, bensì di coordinare le operazioni dei client e gestire il database dei risultati. Il server include funzioni come la ridondanza omogenea (mandare la stessa unità di lavoro a piattaforme simili), l'anteprima dell'unità (inviare informazioni al server prima che l'unità sia stata calcolata completamente) e la pianificazione locale (preparare nuove unità di lavoro prima che il computer abbia terminato quelle correnti e creare unità su richiesta).

Client[modifica | modifica sorgente]

L'applicazione client si occupa di processare le unità di lavoro. Scarica i dati e gli applicativi dei vari progetti tramite un collegamento ad Internet. Per questioni di sicurezza, il client non si aggiorna automaticamente; le applicazioni dei singoli progetti di ricerca, invece, vengono scaricate e aggiornate automaticamente. Il client dispone di varie possibilità di configurazione per permettere un utilizzo conforme alle volontà dell'utente in termini di tempo e risorse messe a disposizione. Consente inoltre la divisione del tempo di calcolo su più di un progetto.

Interfaccia utente[modifica | modifica sorgente]

BOINC può essere controllato da remoto tramite chiamate di procedure remote, riga di comando, e BOINC Account Manager. Il BOINC Manager dispone al momento di due GUI: Avanzata e Semplificata. L'opzione Grid è stata rimossa già dalla versione 6.6.x poiché ridondante. L'aspetto della GUI semplificata è personalizzabile dall'utente, nel senso che questi possono creare i propri modelli grafici.

Account manager[modifica | modifica sorgente]

L'idea dell'account manager è stato pensato e sviluppato congiuntamente da GridRepublic e BOINC. L'account manager attuale include:

  • BOINC Account Manager (Il primo Account Manager disponibile al pubblico)
  • GridRepublic (Segue l'idea di essere semplice e “pulito” quando si tratta di gestire gli account)

Gli account manager sono il punto d'unione di tutti i progetti BOINC. È stato creato un sito dove ognuno può trovare e gestire il progetto con un unico log-in e password.

Il sistema dei crediti[modifica | modifica sorgente]

Il sistema dei Crediti di BOINC è progettato per evitare trucchi, convalidando i risultati prima di concedere i crediti.

  • Un sistema di gestione dei Crediti aiuta a far sì che gli utenti restituiscano risultati corretti sia scientificamente che statisticamente.
  • Il calcolo distribuito on-line è uno sforzo per lo più volontario. Per questo i progetti dipendono da un mix variabile e complicato di nuovi utenti, vecchi utenti e utenti ritirati.
  • Non c'è un motivo singolo e preciso per cui qualcuno decide di donare parte delle proprie risorse di calcolo ad un determinato progetto.

Progetti che utilizzano la piattaforma BOINC[modifica | modifica sorgente]

Exquisite-kfind.png Per approfondire, vedi Lista dei progetti di calcolo distribuito.
Il nuovo logo del progetto BOINC

Attivi[modifica | modifica sorgente]

In fase di test[modifica | modifica sorgente]

In fase di progettazione[modifica | modifica sorgente]

Chiusi[modifica | modifica sorgente]

Note[modifica | modifica sorgente]

  1. ^ a b BOINC is now distributed under the Lesser GPL, BOINC, University of California, Berkeley, 15 gennaio 2005.
  2. ^ http://it.boincstats.com/stats/project_graph.php?pr=bo Statistiche BOINC aggregato (Aggiornato a giugno 2012)]

Bibliografia[modifica | modifica sorgente]

  • Vance, Ashlee. (2003). Sun and UC Berkeley are about to BOINC. [1]

Voci correlate[modifica | modifica sorgente]

Altri progetti[modifica | modifica sorgente]

Collegamenti esterni[modifica | modifica sorgente]

Software libero Portale Software libero: accedi alle voci di Wikipedia che trattano di Software libero