RSS

BOINC: come far diventare utili i tempi morti del nostro PC

22 Gennaio 2011

Varie

boinc-64

Che usiate poco o molto il vostro computer, di sicuro avrete impostato uno screensaver, perchè è inevitabile che anche se state lavorando prima o poi lascerete il computer li da solo (vuoi per rispondere al telefono, farvi uno spuntino, ecc.).
Lo screensaver è nato per salvaguardare i monitor perchè, almeno sui modelli di qualche decina di anni fa, l’esposizione di una stessa immagine per molto tempo, poteva portare a ritrovarsi quella immagine sovraimpressa sullo stesso (a me è capitato con la primissima console, una odissey e la tv: anche se la console veniva spenta, sulla TV si continuava a vedere il gioco sovraimpresso, proprio come riportava il manuale di istruzione sull’uso prolungato del dispositivo!).

Oggi questa funzione dello screensaver è un pò scemata, perchè la tecnologia dei dispositivi video ha fatto passi da gigante, e sono usati soprattutto per un fattore estetico: non sono al pc, bene, se passate davanti al mio monitor godetevi la bella animazione del mio screensaver 🙂

Visto però che non stiamo usando il PC, è uno spreco di elettricità avere tanata potenza inutilizzata per far muovere qualche pixel sullo schermo fine a se stessi. In base a questa idea, più di 10 anni fa nasceva Seti at home, uno screensaver creato all’università di Berkeley che nel tempo morto del pc analizzava i dati raccolti da un radiotelescopio alla ricerca di segnali di vita extra-terrestre nel cosmo, scaricando i dati da analizzare da internet.

Era nata l‘era del calcolo distribuito sfruttando i momenti morti dei pc dei volontari. Questo metodo di calcolo ha avuto quindi uno sviluppo che ha portato a realizzare BOINC, ovvero un sistema per far condividere un progetto di calcolo distribuito su internet, tramite uno screensaver.

Oggi abbiamo più di 35 progetti di calcolo attivi basati su BOINC: se amiamo la matematica, la fisica, la chimica, la biologia, la medicina, la nostra terra e l’astronomia, beh, allora possiamo scegliere uno o più progetti da dare in pasto al nostro computer per aiutare la ricerca scientifica.

Per usare BOINC serve veramente poco:

  • Dal sito http://boinc.berkeley.edu/ dobbiamo scaricare l’eseguibile adatto al nostro sistema operativo (Windows, Linux, Mac): http://boinc.berkeley.edu/download_all.php
  • Su Linux, certe distribuzioni mettono a disposizione già i pacchetti in formato DEB o RPM, pertanto basta usare il proprio package manager e cercare boinc_client e boinc_server per installarli.
  • Eseguiamo l’eseguibile scaricato che non farà altro che creare, nella posizione in cui lanciamo il programma, la cartella BOINC in cui vengono inseriti tutti i file usati dal programma

Sebbene su Windows il programma installato è a tutti gli effetti uno screensaver vero e proprio, su Linux, il programma è un semplice eseguibile da console che funziona a bassa priorità: potete quindi avere il vostro screensaver preferito in funzione e BOINC che lavora nei tempi morti allo stesso tempo.

Pertanto per avviare BOINC ci basta eseguire dalla posizione dove abbiamo lancialo l’installazione

./BOINC/boinc

e se vogliamo che sia sempre in esecuzione ci basta aggiungerlo a uno script eseguito in fase di avvio quel comando.

Possiamo anche lanciare l’ambiente grafico con

./BOINC/boincmgr

con cui possiamo settare vari parametri e controllare lo stato del calcolo, senza ricorrere a parametri di avvio che si dovrebbero usare col client testuale.

Al primo avvio, BOINC vi farà creare un account (perciò vi chiede un indirizzo email e una password): una volta che avete un account potete iniziare a usare il programma, andando ad agganciarvi ad un progetto che si trova al seguente indirizzo:  http://boinc.berkeley.edu/projects.php

Tramite Strumenti, Connessione ad un progetto o ad un account manager, possiamo scegliere tra una lista di progetti proposti, oppure possiamo inserire un indirizzo di un progetto a cui agganciarci.

Appena agganciati il progetto ci chiede una password, in modo da creare un account tramite il nostro indirizzo email. A questo punto BOINC scarica il software per la nostra architettura e i dati da analizzare.

BOINC ha una miniera di opzioni su cui giocare, perchè viene incontro anche a esigenze particolari (tipo se avete un server che lavora di giorno e di notte è li inutilizzato), ma vediamole con ordine:

Uso del processore:

  • [anche] quando il computer va a batteria (così se deselezionate questa voce lo potete usare anche nel netbook)
  • anche quando il computer è in uso (deselezionandolo, solo quando non è in uso il processore, esso viene utilizzato)
  • Usa la GPU anche quando il computer è in uso (alcuni progetti sfruttano anche la GPU per il calcolo, pertanto si può anche qui scegliere come utilizzarla)
  • Si può poi giostrare meglio le opzioni, andando ad indicare dopo quanto tempo di inutilizzo del pc BOINC debba entrare in azione, oppure sotto a quale percentuale di utilizzo del processore, oppure in che orario (specifico anche per i singoli giorni della settimana) e quanta CPU gli è permesso di utilizzare (se mettiamo meno del 100%, il processore avrà dei momenti di relax, utili per abbassare le temperature soprattutto in estate)

Uso della rete:

  • Si può impostare la velocità massima e minima di utilizzo della banda, in modo che non vengano ostacolate le normali operazioni di navigazione, soprattutto se abbiamo un collegamento lento.
  • Si può anche selezionare la quantità massima di MB che si può trasferire in un giorno: se avete un contratto internet a traffico massimo giornaliero, questo è molto utile.
  • Potete poi dire quanto spesso si deve collegare in internet e per quanti giorni di elaborazione si vuole avere una cache nel caso in cui non ci si possa connettere ad internet.
  • Si può richiedere la conferma perchè BOINC possa connettersi ad internet e se deve disconnettere la connessione quando ha finito
  • Infine, si può programmare l’orario in cui può utilizzare internet, e anche per il singolo giorno

Uso del disco e della memoria:

  • si può impostare quanto spazio BOINC possa utilizzare del disco in GB per i progetti e quanto spazio libero del disco debba rimanere, nonchè ogni quanto tempo debba passare tra una scrittura e l’altra nel disco
  • Si può impostare quanta % di memoria BOINC possa utilizzare quando il computer è in uso e non, nonchè se può lasciare in memoria le applicazioni che sono temporaneamente sospese.

Le opzioni non sono però finite: molte sono attivabili via riga di comando per una configurazione ancora più fine…

Lo strumento grafico di controllo, permette anche di vedere la parte grafica per le applicazioni che lo prevedono (come avviene sul screensaver di Windows).

Quando avrete elaborato un pacchetto per un progetto riceverete un punteggio per il lavoro effettuato, così che alla fine potete avere una vostra classifica personale per il vostro aiuto apportato alla ricerca, come vedete qui:

Siete pronti ad aiutare la ricerca scientifica dedicando un pò del vostro tempo morto di CPU, usando un software opensource come BOINC? Spero proprio di si!!

,

2 Responses to “BOINC: come far diventare utili i tempi morti del nostro PC”

  1. xak Says:

    Questo discorso non tiene conto del fatto che ormai i PC sono ottimizati dal punto di vista energetico, quindi il fatto di mettere applicazioni durante il non uso fa solo che consumare di più e nel caso di portatili fa esaurire prima la batteria.
    Io consiglio di abolire il salvaschermo e mettere in standby il monitor, così si consuma e inquina di meno.
    Se poi gli scenziati vogliono fare i loro conti che si prendano un buon supercomputer che vale migliaia di PC normali e è molto più ottimizzato, quindi il consumo finale del tutto è minore.

  2. ice00 Says:

    Purtroppo non sempre i costruttori di hardware producono componenti sempre ottimizzati per il consumo (a parità di prestazioni). La mia vecchia HD2600XT della ATI ha un consumo in idle elevato, pertanto anche se la si utilizza per contribuire alla scienza il consumo in più è minimo.

    Sul mio netbook col processore ATOM il consumo del processore è di appena 2W (circa) a pieno carico (quindi molto ottimizzato per i consumi), contro i 65W o più del processore Quad Core in idle. E’ vero che il quad core se non fa niente consuma poco rispetto a pieno carico (circa 97W), ma è anche vero che sono sempre 65W sprecati per avere un cursore lampeggiante che aspetta che noi battiamo un tasto (per poi schizzare a 100W appena scriviamo dure righe sullo schermo). Diverso sarebbe se in idle consumasse 2W come sull’ATOM.

    A questo punto io preferisco sapere di consumare un pò in più e di contribuire alla scienza, che non “consumare comunque molto” quando mi distraggo 1 minuto dall’uso del pc. Ovviamente è solo una considerazione personale.

    Giustissimo che su un portatile se in batteria deve consumare il meno possibile, io addirittura tolgo sempre la batteria quando sono collegato alla rete elettrica per evitare anche l’eventuale effetto memoria nelle ricariche, alla lunga possa danneggiare la batteria.

    Concordo in pieno con te di mettere in standby il monitor, magari dopo soli 5 minuti di inutilizzo 😉

Leave a Reply