Berkeley Open Infrastructure for Network Computing

De la Wikipedia, enciclopedia liberă.
Salt la navigare Salt la căutare
BOINC
software
Siglă
Manager BOINC
Manager BOINC
Tip Calcul distribuit
Dezvoltator Universitatea din Berkeley (California)
Data primei versiuni 10 aprilie 2002
Ultima versiune 7.16.11 - Windows (2 septembrie 2020 ; acum 11 luni )

7.16.14 - Mac OS X 10.9+ (30 noiembrie 2020 ; acum 8 luni )

7.4.22 - Linux (17 septembrie 2014 ; acum 6 ani )

7.16.16 - Android (12 februarie 2021 ; acum 6 luni )

Sistem de operare Linux
Microsoft Windows
macOS
Android
Limba C ++
Set de instrumente wxWidgets
Licență LGPL
( Licență gratuită )
Site-ul web boinc.berkeley.edu

Infrastructura deschisă Berkeley pentru calcul de rețea ( BOINC ) este un software gratuit pentru calcul distribuit voluntar.

A fost inițial dezvoltat pentru a sprijini proiectul SETI @ home , înainte de a deveni util ca cadru pentru alte aplicații de calcul distribuite în diverse domenii științifice, cum ar fi matematică , medicină , genetică , chimie , biologie moleculară , astrofizică și climatologie . Scopul BOINC este de a pune la dispoziția cercetătorilor puterea enormă de calcul a computerelor personale din întreaga lume și conectate prin internet.

Există versiuni ale software-ului compatibile cu diverse sisteme de operare, precum Microsoft Windows și sisteme similare Unix , inclusiv Linux , macOS , FreeBSD și Android . BOINC este un software gratuit distribuit în conformitate cu licența GNU Lesser General Public License . [1]

Istorie

Proiectul BOINC a început în februarie 2002 și prima versiune a fost lansată pe 10 aprilie 2002. Primul proiect bazat pe BOINC a fost Predictor @ home , care a început pe 9 iunie 2004. BOINC a fost dezvoltat de o echipă de la Laboratorul de Științe Spațiale din Universitatea din California, Berkeley în regia lui David Anderson, care conduce și SETI @ home: cadrul a fost inițial dezvoltat pentru a sprijini proiectul SETI @ home care, până atunci, utilizase o platformă dedicată. În prezent, dezvoltarea se bazează pe comunitate și toată lumea poate contribui. Este finanțat de Fundația Națională pentru Științe prin subvenții SCI / 0221529, SCI / 0438443 și SCI / 0721124.

Ca platformă „cvasi- supercomputer ”, BOINC are aproximativ 92.840 de voluntari, 679.637 de computere active (gazde) din întreaga lume care procesează în medie 28.941 PetaFLOPS (începând cu 20 iulie 2020) [2] , făcându-l cel mai folosit voluntar multidisciplinar. informatică în lume.

Proiectare și compatibilitate hardware

BOINC este conceput pentru a fi o structură gratuită pentru oricine dorește să înceapă un proiect de calcul voluntar. Majoritatea proiectelor BOINC sunt nonprofit și depind în mare parte, dacă nu în totalitate, de voluntari. BOINC este un software care poate profita de procesoarele și GPU- urile computerelor , atunci când acestea nu sunt utilizate, pentru a face calcule științifice - pe scurt, atunci când o persoană nu își folosește computerul, atunci BOINC îl folosește.

BOINC, în acest sens, este semi - "agnostic" în ceea ce privește hardware-ul pe care vor rula proiectele, limitându-se la "expunerea" acestuia aplicațiilor care trebuie compilate în mod adecvat pentru a exploata potențialul platformelor.

  • CPU : Procesorul este punctul de plecare al oricărui proiect Boinc, deoarece acceptă calculele și simulările necesare. În ceea ce privește procesoarele, multe proiecte pot utiliza extensiile SSEx , Avx etc., care pot da rezultate excelente în ceea ce privește accelerarea calculului.
  • GPU : La sfârșitul anului 2008, site-ul oficial al BOINC a anunțat că NVIDIA a dezvoltat un limbaj de programare numit CUDA care utilizează GPU-uri pentru calcule științifice. Cu ajutorul NVIDIA, unele dintre proiectele bazate pe BOINC (de exemplu, SETI @ home , MilkyWay @ home ) au aplicații care rulează pe GPU-uri. La începutul lunii aprilie 2012, BOINC a adăugat, de asemenea, compatibilitatea cu GPU - urile ATI / AMD , prin intermediul limbajului OpenCl . Aceste aplicații pot rula de 3 până la 15 ori mai rapid decât cele bazate pe versiunile corespunzătoare per CPU.
  • ARM : din 2013, platforma Boinc este disponibilă și pe dispozitive ARM (smartphone-uri, tablete etc.) și multe proiecte folosesc această posibilitate, datorită creșterii considerabile atât a numărului, cât și a puterii de calcul a acestor instrumente. Cu toate acestea, din 2015, au fost disponibile compilații pentru platforme cu o singură placă, cum ar fi Raspberry , Parallela, Odroid și altele.

Structura

BOINC constă dintr-o parte server și o parte client care comunică între ele pentru a distribui, procesa și prelua rezultatele WU (Unități de lucru).

Server

Imagine a proiectului Seti @ home

Partea centrală a aplicației este alcătuită din partea „server”, ale cărei diverse sarcini pot fi efectuate pe una sau mai multe mașini pentru a gestiona chiar și proiecte foarte mari. Serverul nu este responsabil de efectuarea calculelor, ci de coordonarea operațiunilor clienților și gestionarea bazei de date a rezultatelor. Serverul se ocupă de împărțirea muncii de făcut în numeroasele subunități, care vor fi apoi trimise către diferitele computere ale voluntarilor conectați la proiect. Serverul include, de asemenea, caracteristici precum redundanță omogenă (trimiterea aceleiași unități de lucru pe platforme similare), previzualizarea unității (trimiterea informațiilor către server înainte ca unitatea să fie complet calculată) și planificare locală (pregătirea unităților de lucru noi înainte ca computerul să finalizeze cele actuale și creează unități la cerere).

Un server BOINC este un server tipic Lamp , pe care este posibil să se instaleze, prin Git, componentele necesare creării infrastructurii: administratorii proiectului au creat și o mașină virtuală deja preconfigurată și gata să înceapă un proiect de calcul distribuit. [3]

Client

Aplicația client se ocupă de procesarea unităților de lucru, descărcarea datelor și aplicațiilor diferitelor proiecte printr-o conexiune la Internet. Din motive de securitate, clientul nu se actualizează automat; aplicațiile proiectelor individuale de cercetare, pe de altă parte, sunt descărcate și actualizate automat. Clientul are diverse posibilități de configurare pentru a permite utilizarea în conformitate cu dorințele utilizatorului în ceea ce privește timpul și resursele puse la dispoziție. De asemenea, permite împărțirea timpului de calcul pe mai multe proiecte. Din 2013 este posibil să descărcați clientul cu pachetul VirtualBox deja inclus, deoarece unele proiecte utilizează mașini virtuale pentru a putea gestiona în mod adecvat punctele de control (salvarea automată a muncii efectuate) sau pentru a furniza „unitățile de lucru” cu mediu software standardizat de care au nevoie. Pentru a îmbunătăți în continuare standardizarea necesară pentru execuția unor proiecte, din 2016 Boinc este compatibil cu Docker .

Înveliș

Echipa de dezvoltare BOINC a creat un strat intermediar opțional ( wrapper ) pentru comunicarea între aplicația de rulat și clientul BOINC, astfel încât să permită funcționarea software-ului existent fără a fi nevoie să rescrieți codul pentru a-l adapta la infrastructura BOINC. Performanța aplicațiilor care utilizează împachetarea este evident puțin mai mică decât cele care sunt compilate nativ pentru a rula în cadrul BOINC, dar au avantajul de a rula imediat fără modificări majore la software-ul în sine.

Interfața cu utilizatorul

BOINC poate fi controlat de la distanță prin apeluri de proceduri de la distanță , linie de comandă și manager de cont BOINC. Managerul BOINC are în prezent două GUI-uri : Avansat și Simplificat. Opțiunea Grid a fost deja eliminată din versiunea 6.6.x deoarece este redundantă. Aspectul GUI simplificat este personalizabil de către utilizator, în sensul că utilizatorul își poate crea propriile șabloane grafice.

credite

Desigur, calculul distribuit voluntar nu are o recompensă monetară în schimbul utilizării sistemelor sale informatice (spre deosebire de proiecte precum Bitcoin ), dar atribuie un scor fiecărei unități de lucru procesate, în așa fel încât să atragă oamenii să participe . Clientul SETI original era un software non-BOINC exclusiv pentru SETI @ home. Fiind primul dintre proiectele voluntare de calcul de rețea , nu a fost conceput cu un nivel ridicat de securitate. Unii participanți la proiect au încercat să manipuleze datele pentru a obține „credite”, în timp ce alții au trimis locuri de muncă complet false (înșelăciune); BOINC a fost conceput, în parte, pentru a combate aceste găuri de securitate.

Sistemul de creditare

Sistemul de credit al BOINC este conceput pentru a evita trucurile, asigurând validarea rezultatelor înainte de acordarea creditelor.

  • Un sistem de gestionare a creditelor ajută la asigurarea faptului că utilizatorii returnează rezultate corecte atât din punct de vedere științific, cât și statistic.
  • Calculul distribuit online este un efort majoritar voluntar. Ca atare, proiectele depind de un amestec complicat și variabil de utilizatori noi, utilizatori vechi și utilizatori retrași.
  • Nu există un motiv unic și precis pentru care cineva decide să doneze o parte din resursele lor de calcul unui anumit proiect.

Manager Conturi

Ideea managerului de cont a fost concepută și dezvoltată în comun de GridRepublic și BOINC. Doi manageri de cont sunt:

  • BOINC Account Manager (primul manager de cont disponibil public)
  • GridRepublic (Urmează ideea de a fi simplu și „curat” atunci când vine vorba de gestionarea conturilor)

Managerii de cont sunt punctul de întâlnire pentru toate proiectele BOINC. A fost creat un site unde toată lumea poate găsi și gestiona proiectul cu o singură autentificare și parolă. [4]

Provocări și provocări internaționale

Unul dintre aspectele fundamentale ale platformei Boinc este participarea voluntarilor, nu numai în ceea ce privește simpla putere de calcul „donată”, ci și în ceea ce privește o adevărată participare activă la toate aspectele unui proiect (forum de discuții, depanare a aplicațiilor, raportare probleme etc.). Pe de altă parte, voluntarii, de-a lungul timpului, s-au agregat în grupuri, în cadrul cărora, de exemplu, se oferă sprijin pentru noii veniți, se fac traduceri de proiecte etc. Mai mult, aceste grupuri sunt adesea implicate în „provocări” pașnice, atât la nivel național, cât și internațional, pe baza scorurilor acumulate de membri într-o anumită perioadă de timp. Uneori, aceste provocări sunt organizate chiar de administratorii unui proiect, care doresc să-și testeze infrastructura IT, într-un fel de test de stres .

Proiecte care utilizează platforma BOINC

Pictogramă lupă mgx2.svg Același subiect în detaliu: Lista proiectelor de calcul distribuite .
Noul logo al proiectului BOINC

Activ

Proiecte beta (unde sunt testate aplicațiile)

Închis

Notă

  1. ^ BOINC este acum distribuit sub Lesser GPL , pe boinc.berkeley.edu , BOINC, Universitatea din California, Berkeley , 15 ianuarie 2005. Accesat la 23 iulie 2015 (arhivat din original la 4 martie 2016) .
  2. ^ https://boinc.berkeley.edu/
  3. ^ https://boinc.berkeley.edu/trac/wiki/VmServer
  4. ^ https://boincstats.com/it/bam/

Bibliografie

  • Vance, Ashlee. (2003). Sun și UC Berkeley sunt pe cale să BOINC . [1]

Elemente conexe

Alte proiecte

linkuri externe

Controlul autorității GND ( DE ) 1025312678
Software gratuit Portal Software gratuit Puteți ajuta Wikipedia extinzându-l Software-ul gratuit