Guide

Valutazione attuale: 0 / 5

Stella inattivaStella inattivaStella inattivaStella inattivaStella inattiva

In questa guida vedremo come creare dei client multipli su una distribuzione GNU/Linux tramite l’utilizzo dei container Docker. E come gestirli tramite Portainer.


Perché mi servono altri client Boinc?
Alcuni progetti hanno dei limiti di wu (work unit) scaricabili. Questi limiti possono impedire la creazione dei cosiddetti “bunker”.
Altro limite nella creazione di un “bunker” è il dover negare la connessione internet al client. Se si finiscono le wu prima del previsto, non potremo più scaricarne altre. Poiché una volta sbloccata la connessione, oltre che scaricarne di nuove…caricherà quelle che avevamo precedentemente elaborato. Vanificando il nostro “bunker”.
Un altro modo per utilizzare più client Boinc è quello di separare progetti cpu da quelli gpu. In modo da avere un controllo maggiore.
Utilizzando dei container si possono gestire molti altri aspetti come:
• quantità di core/thread da dedicare
• quantità di ram da dedicare
• possibilità di rendere disponibile la gpu (in caso di sistemi con più gpu, si può decidere quale)
• gestione da remoto normale, tramite il manager o BoincTask
• possibilità di crearli quando si vuole, anche con altri client attivi
• creazione quasi del tutto "automatizzata" grazie a docker-compose

 


Per commentare questo post nel forum devi effettuare il login

Valutazione attuale: 0 / 5

Stella inattivaStella inattivaStella inattivaStella inattivaStella inattiva

 

Guida all'uso di Raspberry PI4

 

Questa è una breve guida su come configurare il proprio Raspberry per aiutare il progetto Rosetta@Home. La guida si compone di due parti: la prima riguarda la configurazione manuale del proprio dispositivo, mentre la seconda prevede l'uso di un sistema di configurazione automatica (più semplice e veloce) chiamata Fold For Covid.

 

Rosetta@Home sul Raspberry PI4 - Configurazione manuale

Con la nuova versione degli applicativi è possibile far funzionare il progetto Rosetta@home sul Raspberry Pi4: questo applicativo, chiamato "Rosetta for Portable devices" gira sotto Raspbian, ma è solamente per l’architettura ARM64.

Link a Rosetta@home: http://boinc.bakerlab.org/rosetta/

Link a Raspberry Pi4: https://www.raspberrypi.org/products/raspberry-pi-4-model-b/

Link a Raspbian: https://www.raspberrypi.org/downloads/raspbian/


Ci sono però alcuni punti da tener ben presente:

  • Bisogna impostare il kernel in modalità a 64 bit.
  • Bisogna indicare a BOINC che è una piattaforma aarch64 (ARM64).
  • Alcune attività di Rosetta possono utilizzare fino a 1,5 GB di memoria ciascuna, quindi è necessario limitare quante vengono eseguite contemporaneamente.

La maggior parte dei progetti BOINC non ha (per ora) applicativi aarch64, in maniera particolare Einstein@Home che ha una app incompatibile e che fa andare in errore tutte le wu. Si può sempre tornare alla modalità armhf (32 bit) dopo, facendo in maniera inversa questi passi.

- Si, teoricamente potete farlo anche con un Pi3B o un Pi3B+, ma questi hanno solo 1Gb di memoria, quindi è difficilmente utilizzabile. -

Perché sono necessari tutti questi passaggi?
Come abbiamo appena detto, quando si installa Raspbian sul Pi tutto è a 32 bit, i programmi e gli add-on ed è conosciuto come armhf (ARM hard float). La Raspberry Pi Foundation ha fatto modifiche al kernel per permettere la modalità a 64 bit, ma gli applicativi sono ancora a 32 bit. Quando viene installato Boinc, si ha la versione armhf dal momento che la Fondazione non ha ancora i repository aarch64. E’ per questo motivo che è necessario dire a Boinc che è su una versione aarch64, così che chieda correttamente al server del progetto wu a 64 bit.


1. Installare BOINC
Se è già installato, passate oltre. Se non è installato, per prima cosa è consigliabile aggiornare il Raspberry con i seguenti comandi:

sudo apt-get update

sudo apt-get upgrade

Riavviate e lanciate il comando per installare Boinc (con l'interfaccia grafica del manager):

sudo apt-get install boinc

Avviate Boinc e agganciate il progetto Rosetta@Home, ma selezionate “Blocca richiesta attività” dal Manager (non devono essere presenti wu, altrimenti andranno in errore).


2. Impostare il kernel nella modalità a 64 bit
Di default il kernel di Raspberry è configurato a 32 bit per motivi di compatibilità con i software dei precedenti Pi. E’ necessario avere un kernel 4.19.75 o successivo. Per capire che versione del kernel è presente sul vostro Raspberry, si può lanciare dal terminal o via ssh il seguente comando:
uname -a

(Se è presente un kernel precedente e non avete già aggiornato, lanciate i due comandi al punto 1).

Fate uno copia del file di configurazione. Scrivete:
cd /boot
sudo cp config.txt config.old

Editare, adesso, il file config.txt con l’editor Nano.
sudo nano config.txt

Una volta aperto Nano, andare nella parte finale e aggiungere "arm_64bit=1" (senza le virgolette) in una nuova linea. Premere Control+O per salvare il file e Control+X per uscire da Nano.

Riavviare


3. Dire a BOINC che è su una piattaforma aarch64
Tornare nel terminal o nella sessione ssh e rilanciare il comando:
uname -a

Si dovrebbe vedere la scritta "aarch64" alla fine della linea (se non c’è bisogna risolvere ricontrollando il passaggio 2). Se, invece, è correttamente presente, occorre editare il file cc_config.xml, utilizzato da BOINC, in questa maniera:
cd /etc/boinc-client
sudo nano cc_config.xml

Una volta all’interno del file, occorre aggiungere il tag <alt_platform> e deve essere inserito tra i tag <options>  (da creare). Se non è presente il tag <options> occorre crearlo così:
<options>
  <alt_platform>aarch64-unknown-linux-gnu</alt_platform>
</options>

Se, invece, è già presente aggiungere soltanto, all’interno, la riga:
<alt_platform>aarch64-unknown-linux-gnu</alt_platform>

Cliccare Control+O per salvare il file e Control+X per uscire. Occorre riavviare il client Boinc (non solo il manager) per applicare le modifiche – oppure riavviate il Raspberry - , con il seguente comando:
sudo systemctl restart boinc-client

Riattivare la ricezione del lavoro sul Manager.

 

Rosetta@Home sul Raspberry PI4 - Usare Fold for COVID


Se la procedura qui sopra vi sembra troppo complessa, non ci sono problemi.

L'azienda Balena.io (che si occupa di cloud e IoT) ha creato una immagine linux per Raspberry già pronta per Rosetta@Home e che è possibile controllare comodamente da remoto via web. Grazie al loro servizio, infatti, è possibile installare e controllare gratuitamente fino a 10 device.

Il progetto si chiama Fold for Covid e mette a disposizione immagini non solo per il PI4, ma anche per altre piattaforme IoT (NanoPc, Nvidia Jetson, Nitrogen 8M, ecc).

 

Buono scaccolo!!!

Discuti questo articolo nel forum (3 risposte).

Valutazione attuale: 5 / 5

Stella attivaStella attivaStella attivaStella attivaStella attiva
Lavagna SchedulerA volte un progetto ha poco lavoro da distribuire e lo fa con il contagocce solo quando il vostro PC contatta il server, a volte lo stesso BOINC manager contatta il server di un particolare progetto molto raramente, in base a logiche che a noi sfuggono.
Ma noi vogliamo elaborare su quel progetto, vogliamo WU a sufficienza per "nutrire" i nostri criceti, e di conseguenza iniziamo ad aggiornare manualmente il progetto sperando che ci dia lavoro. Ma questo metodo alla lunga stanca ovviamente.
Discuti questo articolo nel forum (16 risposte).

Valutazione attuale: 5 / 5

Stella attivaStella attivaStella attivaStella attivaStella attiva

Creare un Server BOINC

 

Molto tempo fa, con Simone Conti, si rilevava il problema che i ricercatori (o anche semplici appassionati curiosi) potevano essere interessati ad utilizzare la piattaforma Boinc per i loro scopi, ma che si arenavano praticamente subito di fronte alla creazione e alla configurazione di un server Boinc (mica tutti hanno un Valterc nel loro team), vuoi per la mancanza di tempo per studiarsi la documentazione vuoi per altre problematiche. In realtà questa paura è assolutamente infondata: la creazione di un server Boinc è una operazione alla portata di chiunque abbia un minimo di infarinatura di linux e di linea di comando, non essendoci niente di esotico. Avevamo quindi deciso di creare una piccola guida all'uopo, raccogliendo il materiale sparso in giro per la rete, traducendolo e rendendolo coerente. Poi, cose della vita, ce ne siamo dimenticati fino a che, qualche settimana fa, il file mi è tornato sotto mano e ho deciso di completarlo.

Ovviamente il tutto è alla prima versione pubblica, quindi ci sarà sicuramente da sistemare molto, ma almeno è un inizio.

Ecco la guida completa

Ho creato una guida più snella e veloce, rimuovendo molte considerazioni e tutte le immagini dalla guida completa

Ecco la guida ridotta

Ho creato, inoltre, una guida ultra-ridotta per chi già conosce gli ambienti di virtualizzazione e linux e quindi può cominciare subito a lavorare sul server

Ecco la guida essenziale

Discuti questo articolo nel forum (26 risposte).

Per commentare questo post nel forum devi effettuare il login

Articoli

Written on 31/05/2020, 10:32 by boboviz
multisessioni-boinc-su-pcIn questa guida vedremo come creare dei client multipli su una distribuzione GNU/Linux tramite l’utilizzo dei container Docker. E come gestirli tramite...

Ultime dal Blog

Written on 19/06/2017, 14:38 by boboviz
addio-lugano-bellaCari sodali scaccolatori,come alcuni di voi sanno, il sottoscritto, oltre ad essere appassionato di Boinc, è anche "appassionato" di HPC e, visto che il...