Berkeley Open Infrastructure for Network Computing: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Boboviz (discussione | contributi)
create le sezioni gpu e android
LucaLindholm (discussione | contributi)
 
(11 versioni intermedie di 7 utenti non mostrate)
Riga 6:
|Didascalia = BOINC Manager
|Sviluppatore = Università di Berkeley (California)
|UltimaVersione = 7.1424.21 - Windows 64 bit ({{data rilascio|1112|108|20182023}})<ref>{{Cita web|url=https://boinc.berkeley.edu/download_all.php|titolo=Download BOINC client software|sito=boinc.berkeley.edu|accesso=2023-10-13}}</ref>
 
7.14.2 - MacWindows OS32 X 10.6+bit ({{data rilascio|11|10|2018}})
 
7.24.1 - MacOS 10.13+ ({{data rilascio|12|8|2023}})
 
7.4.22 - Linux ({{data rilascio|17|9|2014}})
 
7.424.531 - Android ({{data rilascio|312|78|20162023}})
|DataUltimaVersione =
|SistemaOperativo = linux
Line 24 ⟶ 26:
|SitoWeb =
}}
Il '''Berkeley Open Infrastructure for Network Computing '''('''BOINC''')''' ''' è un [[software libero]] per il [[calcolo distribuito]] volontario.
 
ÈBOINC è stato sviluppato da un team presso lo ''Space Sciences Laboratory'' della [[University of California, Berkeley]] in origine per sostenere il progetto [[SETI@home]], prima di diventare utile come framework per altre applicazioni di [[calcolo distribuito]] in svariate aree scientifiche, come la [[matematica]], la [[medicina]], la [[genetica]], la [[chimica]], la [[biologia molecolare]], l'[[astrofisica]] e la [[climatologia]].

Lo scopo che si prefigge BOINC è quello di rendere disponibile ai ricercatori l'enorme [[MIPS (unità di misura)|potenza di calcolo]] dei [[personal computer]] sparsi per il mondo e collegati via internet.
 
Considerato come un “quasi-[[supercomputer]]”, ad ottobre 2023 la rete BOINC conta oltre 4 milioni di utenti registrati nel mondo<ref>{{Cita web|url=https://www.boincstats.com/stats/-5/user/list/|titolo=BOINC stats - User stats|sito=boincstats.com|lingua=en}}</ref><ref>{{Cita web|url=https://www.boincstats.com/stats/-1/project/detail/user|titolo=BOINC combined - Detailed stats {{!}} BOINCstats/BAM!|sito=www.boincstats.com|accesso=2023-10-13}}</ref>, circa 172.000 host (computer attivi)<ref>{{Cita web|url=https://www.boincstats.com/stats/-1/project/detail/|titolo=BOINC combined - Detailed stats {{!}} BOINCstats/BAM!|sito=www.boincstats.com|lingua=en|accesso=2023-10-13}}</ref> e oltre 40.000 utenti attivi ogni mese<ref>{{Cita web|url=https://boinc.netsoft-online.com/e107_plugins/boinc/bp.php?project=1|titolo=BOINC {{!}} BOINC Combined Statistics|sito=boinc.netsoft-online.com|lingua=en|accesso=2023-10-13}}</ref>.
 
Esistono versioni del software compatibili con diversi sistemi operativi, come [[Microsoft Windows]] e sistemi [[Unix-like]], tra cui [[Linux]], [[macOS]], [[FreeBSD]] ed [[Android]]. BOINC è un [[software libero]] distribuito nei termini della licenza [[GNU Lesser General Public License]].<ref name="licenza">{{Cita web| titolo = BOINC is now distributed under the Lesser GPL| url = https://boinc.berkeley.edu/legal.html| editore = BOINC, [[University of California, Berkeley]]| data = 15 gennaio 2005| accesso = 23 luglio 2015| urlarchivio = https://web.archive.org/web/20160304185434/https://boinc.berkeley.edu/legal.html| dataarchivio = 4 marzo 2016| urlmorto = sì}}</ref>
 
== Storia ==
Il progetto BOINC è iniziato nel febbraio 2002 e la prima versione è stata distribuita 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: il framework venne originariamente sviluppato per sostenere il progetto [[SETI@home]] che, fino ad allora, aveva usato una piattaforma dedicata. Attualmente lo sviluppo è comunitario e tutti possono contribuire. È finanziato dalla [[National Science Foundation]] attraverso i finanziamenti SCI/0221529,SCI/0438443 e SCI/0721124.
 
Alla stregua di una piattaforma di “quasi-[[supercomputer]]”, BOINCla contarete circa 92,840 volontari, 679,637 computer attivi (hosts) intorno al mondo cheBOINC elaboranoelabora una media di 28.941 [[FLOPS|PetaFLOPS]] (alla data del 20 luglio 2020)<ref>https://boinc.berkeley.edu/</ref>, rendendola la piattaforma di [[volunteer computing]] multidisciplinare più utilizzata al mondo.
 
== Progetto e compatibilità hardware ==
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 per la maggior parte, se non completamente, da volontari.

BOINC è un [[software]] che può sfruttare le [[CPU]] e le [[Graphics Processing Unit|GPU]] deidi ogni [[computer]], quando queste non vengono utilizzate, per effettuare calcoli scientifici&nbsp;– in sintesi, quando una persona non usa il proprio computer, allora lo usa BOINC.
 
BOINC, in tal senso, è semi - "agnostico" per quanto riguarda l'hardware su cui gireranno i progetti, limitandosi ad "esporlo" agli applicativi i quali dovranno essere loro adeguatamente [[Compilatore|compilati]] per poter sfruttare le potenzialità delle piattaforme.
 
* '''GPUCPU''': allaIl fineprocessore del 2008,è il sito ufficialepunto di BOINC annunciò che [[NVIDIA]] aveva sviluppato un linguaggiopartenza di programmazionequalsiasi chiamatoprogetto [[CUDA]]Boinc, chein utilizzavaquanto lesupporta GPU peri calcoli scientifici. Con l'aiuto di NVIDIA, alcuni dei progetti basati su BOINC (i.e., [[SETI@home]], [[MilkyWay@home]]) hanno applicazioni che girano su GPU. All'inizio di aprile 2012, BOINC aggiunse anche la compatibilità con le GPUsimulazioni di [[AMD|ATI/AMD]], attraverso il linguaggio [[OpenCL|OpenCl]]. Queste applicazioni possono avere velocità di esecuzione dalle 3 alle 15 volte superiori rispetto a quelle basate su versioni corrispettive per CPUnecessari. Per quanto riguarda le CPU, molti progetti sono in grado di utilizzare le estensioni [[Streaming SIMD Extensions|SSEx]], [[Advanced Vector Extension|Avx]], ecc, che possono dare ottimi risultati in termini di accelerazione del calcolo.
 
* '''GPU''': alla fine del 2008, il sito ufficiale di BOINC annunciò che [[NVIDIA]] aveva sviluppato un linguaggio di programmazione chiamato [[CUDA]] che utilizzava le GPU per calcoli scientifici. Con l'aiuto di NVIDIA, alcuni dei progetti basati su BOINC (i.e., [[SETI@home]], [[MilkyWay@home]]) hanno applicazioni che girano su GPU. All'inizio di aprile 2012, BOINC aggiunse anche la compatibilità con le GPU di [[AMD|ATI/AMD]], attraverso il linguaggio [[OpenCL|OpenCl]]. Queste applicazioni possono avere velocità di esecuzione dalle 3 alle 15 volte superiori rispetto a quelle basate su versioni corrispettive per CPU.
 
* '''AndroidARM''': dal 2013, la piattaforma Boinc è disponibile anche sui device AndroidARM (smartphone, tablet, ecc) e molti progetti utilizzano questa possibilità, grazie all'aumento considerevole sia del numero sia della potenza di calcolo di questi strumenti. Dal 2015, invece, sono disponibili compilazioni per piattaforme single-board come [[Raspberry Pi|Raspberry]], Parallela, Odroid e altre.
 
==Struttura==
Line 51 ⟶ 61:
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 non si occupa di eseguire i calcoli, bensì di coordinare le operazioni dei client e gestire il database dei risultati. Il server si occupa di suddividere il lavoro da svolgere nelle tante sotto-unità, che verranno poi inviate ai vari computer dei volontari agganciati al progetto. Il server, inoltre, 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).
 
Un server BOINC è un tipico server [[LAMP|Lamp]], su cui è possibile installare, attraverso [[Git (software)|Git]], le componenti necessarie per creare l'infrastruttura: gli amministratori del progetto hanno anche provveduto a creare una [[macchina virtuale]] già preconfigurata e pronta a far partire un progetto di calcolo distribuito.<ref>https://boinc.berkeley.edu/trac/wiki/VmServer</ref>
 
=== Client ===
Line 75 ⟶ 85:
 
=== Account manager ===
L'''account manager'' è un applicativo che serve per gestire diversi account locali su vari computer fisici. Grazie ad essi, è possibile ricondurre tutta l'elaborazione fatta da un singolo "utente" (o anche organizzazione) ad esso, anche dal punto di vista statistico. L'idea dell'account manager è stato pensata e sviluppata congiuntamente da GridRepublic e BOINC. Due account manager sono:
* ''BAM!'' ("BOINC Account manager")<ref>{{Cita web|url=https://www.boincstats.com/bam/|titolo=BAM! - Home|lingua=en}}</ref><ref>{{Cita web|url=https://boinc.berkeley.edu/wiki/BOINC_Account_Manager|titolo=BOINC Account Manager - Wiki|lingua=en}}</ref> (Il primo Account Manager disponibile al pubblico, dal 2006)
* ''GridRepublic''<ref>{{Cita web|url=https://www.gridrepublic.org/|titolo=Grid Republic - Home|lingua=en}}</ref> (Segue l'idea di essere semplice e “pulito” quando si tratta di gestire gli account)
* ''Charity Engine''<ref>{{Cita web|url=https://www.charityengine.com/|titolo=charityengine - Home|lingua=en}}</ref> (Account manager che invoglia gli utenti a partecipare tramite donazioni e lotterie di carità)
* ''Science United''<ref>{{Cita web|url=https://scienceunited.org/|titolo=Science United - Home}}</ref> (Account manager che aiuta a indirizzare il carico di elaborazione verso progetti specifiche aree scientifiche, tipo quella della "medicina" o della "fisica")
* ''Dazzler''<ref>{{Cita web|url=https://github.com/Kodomo/Dazzler|titolo=Kodomo/Dazzler|sito=GitHub|lingua=en}}</ref>
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.<ref>https://boincstats.com/it/bam/</ref>
 
Line 85 ⟶ 98:
== Progetti che utilizzano la piattaforma BOINC ==
{{vedi anche|Lista dei progetti di calcolo distribuito}}
[[File:BOINC logo July 2007.pngsvg|thumb|right|Il nuovo logo del progetto BOINC]]
 
=== Attivi ===
Line 98 ⟶ 111:
* [[Malariacontrol.net]] - https://web.archive.org/web/20060712172450/http://www.malariacontrol.net/
* [[Rosetta@home]] - https://boinc.bakerlab.org/rosetta/
* [[SETI@home]] - http://setiathome.ssl.berkeley.edu/
* [[SZTAKI Desktop Grid]] - https://web.archive.org/web/20160814071936/http://szdg.lpds.sztaki.hu/szdg/
* [[World Community Grid]] - https://www.worldcommunitygrid.org/
Line 111 ⟶ 123:
* Albert@Home (beta di Einstein@Home) - https://albertathome.org/it-it/home
* Ralph@Home (beta di Rosetta@Home) - https://ralph.bakerlab.org/
* SetiBeta (beta di Seti@Home) - https://setiweb.ssl.berkeley.edu/beta/ {{Webarchive|url=https://web.archive.org/web/20170921193903/https://setiweb.ssl.berkeley.edu/beta/ |date=21 settembre 2017 }}
 
=== Chiusi ===
* [[Artificial Intelligence System]]
* [[Orbit@home]] - http://orbit.psi.edu/ {{Webarchive|url=https://web.archive.org/web/20060811123652/http://orbit.psi.edu/ |data=11 agosto 2006 }}
* [[SETI@home]] - http://setiathome.ssl.berkeley.edu/ il 3 marzo 2020
 
== Note ==
Line 126 ⟶ 139:
* [[Calcolo distribuito]]
* [[Rete di calcolatori]]
*[[Progetti di calcolo distribuito]]
 
== Altri progetti ==
Line 138 ⟶ 152:
 
[[Categoria:BOINC| ]]
[[Categoria:Progetti di ricerca]]