Le panier est vide

J'ai expliqué dans un précédent article ce qu'était BOINC et comment l'installer sur un téléphone Android. Cet article sera encore un peu plus geek, puisqu'il explique comment l'installer sur un Raspberry pi et donner ainsi (modestement) son temps de calcul à la science.

Chez moi, je dispose de 3 Raspberry pi, ces petites cartes de la taille d'une carte de crédit que l'on trouve sur le web pour 45€ environ et qui font office d'ordinateur. Ce sont vraiment des ordinateurs formidables qui consomment très peu. Si vous souhaitez plus d'informations sur ces petits PC qui tournent sous linux, je vous invite à regarder la page wikipedia. https://fr.wikipedia.org/wiki/Raspberry_Pi

raspberry pi

 

Mes Raspberry sont allumés 100% du temps (en 24/7). Il était donc intéressant de tirer (modestement) profit de ces heures où mes Raspberry sont allumés et qu'ils ne font strictement rien. Je vais donc vous expliquer dans cet article comment configurer un Raspberry pi pour faire du calcul distribué. Je vais vous expliquer la méthode sur un Raspberry pi B+ ,mais la méthode restera la même pour le modèle 2 ou 3. 

Il faut compter une bonne heure de boulot:

Prérequis:

  • disposer d'un Raspberry pi modèle B+ au minimum,
  • disposer d'une carte micro SD de bonne qualité et de 8Go,
  • disposer d'un câble HDMI pour connecter votre carte à la télé,
  • disposer d'une bonne alimentation (généralement si vous partez de 0 vous pouvez trouver des kits qui contiennent un raspberry pi, une alim et un carte SD)
  • disposer d'une connexion internet et d'un câble RJ45 pour connecter votre raspberry à la box,
  • être en possession d'un clavier USB,
  • avoir un autre ordinateur.

Installer Raspbian:

La première étape consiste à installer un système d'exploitation, généralement sous Linux. Raspbian semble être la bonne alternative.

Rendez vus sur le site de Raspbian https://www.raspberrypi.org/downloads/raspbian/ et choisissez la version Lite (ici la version proposée au 21/08/2017 est RASPBIAN STRETCH LITE). Télécharger donc le zip sur votre PC.

De-zipper et vous obtiendrez une un fichier .img

Il faut maintenant copier l'image sur votre carte SD.

Sous Windows: (méthode du très bon site: https://raspbian-france.fr/creez-carte-sd-raspbian-raspberry-pi-windows/)

Télécharger et installer Win32DiskImager.

Insérer la carte SD dans le lecteur de carte de votre PC ou via un adaptateur USB.

Lancez Win32DiskImager et cliquez sur l’icône représentant un dossier à droite du champ « Image File ».

Cliquez sur l’icône en forme de dossier.

Cela ouvrira l’explorateur de fichier, allez jusqu’au fichier « .img » obtenu un peu plus tôt en désarchivant le fichier ZIP de Raspbian.

À droite de l’icône en forme de dossier, dans le champ « Device », choisissez le lecteur correspondant à votre carte MicroSD, ne vous trompez surtout pas de lecteur !

 

Choisissez le lecteur correspondant à votre carte MicroSD

Une fois ceci fait, cliquez sur le bouton « Write », vous verrez alors l’écriture de l’image sur votre carte SD progresser.

Cliquez sur le bouton « Write » lancera l’écriture.

Vous pourrez voir en direct la progression de l’écriture de Raspbian sur la carte SD de votre Raspberry Pi

Une fois l’écriture terminée, la fenêtre affiche « Done » sous la barre de progression. Il ne vous reste plus qu’à quitter Win32DiskImager, à éjecter votre carte SD !

Sous Linux 

Vous disposez du fichier .img, il va vous falloir le copier sur la carte SD.

Commencez par exécuter la commande

df -h

qui va vous lister tous les disques.

Insérer la carte SD dans le lecteur ou via un adaptateur USB.

ré-exécuter la commande 

df -h

Il devrait y avoir des lignes supplémentaires. La colonne de gauche vous donne le nom du device: exemple /dev/mmcblk0p1  ou /dev/sdd1 le 1 montrant le numéro de partition. Il peut y avoir plusieurs partitions, exemple: /dev/sdd2

Il faudra donc considérer /dev/sdd ou /dev/mmcblk0p comme nom de device

exécuter alors la commande:

umount /dev/sdd1

puis éventuellement, le cas échéant, si vous aviez plusieurs partitions:

umount /dev/sdd2

Enfin vous aller copier l'image sur la carte SD avec la commande dd . Faites bien attention à ce que vous écrivez car si vous commettez une erreur, vous pouvez vous retrouver à effacer votre disque dur. Assurez vous que le nom du device soit bien correct!

Placez vous dans le répertoire ou se trouve l'image avec la commande cd, puis:

dd bs=4M if=2017-08-16-raspbian-stretch-lite.img of=/dev/sdd conv=fsync

En remplaçant 2017-08-16-raspbian-stretch-lite.img par le nom correct de l'image (pour moi, comme j'avais justement la stretch, c'est bien la bonne commande)

Il faut compter une bonne dizaine de minutes pour que l'image soit correctement recopiée.

Ensuite démontez votre lecteur de carte SD. C'est prêt! :)

Configuration de votre raspberry pi 

Insérer la carte SD dans le Raspberry pi, brancher le clavier, le câble RJ45 relié à la box, et enfin l'alimentation du Raspberry pi.

Ce dernier va démarrer et va commencer par étendre son File System. Cette opération prend quelques secondes. A la fin du démarrage, vous aurez la possibilité de saisir un login et un mot de passe.

Mais avant notez un peu plus haut, l'adresse IP du Raspberry pi (rechercher la ligne My Ip Adress is : 192.168.X.X), elle vous sera peut être utile si vous êtes un aficionado du SSH.

Le login par défaut est pi et le mot de passe est raspberry. ATTENTION le clavier est configuré en QWERTY (donc il faut tapper rqsberry). Par ailleurs le mot de passe ne s'affiche pas quand on le tape, c'est normal!

Taper ensuite (vous êtes toujours en QWERTY): 

sudo raspi-config

La fenêtre suivante s'affiche:

raspi-config_stretch

Sélectionner "Localisation Options" puis "configure Keyboard Layout" afin de configurer le clavier français. Laissez vous guider et prenez tous les choix par défaut une fois que vous aurez dit que votre clavier est français.

Faites de même avec le Time Zone toujours dans "Localisation Options".

Enfin, sélectionner Changer User Password et modifier le mot de passe (si vous avez respecté cet ordre alors vous êtes maintenant en AZERTY).

Vous pouvez configurer l'accès SSH si vous savez vous en servir dans "Interfacing Options". Vous vous connecterez alors à votre Raspberry pi sans écran depuis n'importe quel ordinateur avec un client ssh (TRES Pratique!)

Enfin allez sur Finish. L'outil vous propose un reboot, acceptez le!. Votre Raspberry pi est prêt à recevoir BOINC!

Installation de BOINC-CLIENT

une fois redémarré et connecté, vous aurez à taper la commande suivante:

sudo apt-get update

puis 

sudo apt-get install boinc-client

C'est tout!

Ajout de projets BOINC

Tous les projets ne sont pas compatibles Raspberry. Pour connaitre la liste des projets compatibles visitez ce site: https://boinc.berkeley.edu/projects.php et repérez le logo suivant: 

Linux Arm

A l'heure ou j'écris ces lignes j'ai également remarqué que le projet [email protected] ne semblait pas nativement compatible avec la distribution Raspbian Stretch sans installer un version développée par un passionné du projet alors qu'il l'était sous Raspbian Jessie, mais je suis persuadé que tôt ou tard cela fonctionnera à nouveau normalement, d'ailleurs n'hésitez pas à poster un commentaire si vous arrivez à le faire marcher avant moi!

Prérequis: Avoir créé un compte sur la page du projet qui vous intéresse. Notre exemple se basera sur [email protected], 

Taper la commande suivante:

boinccmd --lookup_account http://universeathome.pl/universe [email protected] motdepasse

La fenêtre vous renvoit:

success

poll in progress

df5d5m568j456ml874kj235m8d058kh87

Taper alors:

boinccmd --project_attach http://universeathome.pl/universe df5d5m568j456ml874kj235m8d058kh87

Puis:

boinccmd --project  http://universeathome.pl/universe update

Voilà c'est finit!!

Pour connaitre le statut des tâches il ne vous suffit que de taper quelques secondes plus tard:

boinccmd --get_state

Vous devriez voir apparaître, des informations sur le projet (avec vos identifiants), puis les applications (si cette section est vide c'est que le projet n'est pas compatible ou bien que vous n'avez pas bien recopié votre identifiant), et enfin quelques tâches.

Votre Raspberry va maintenant calculer tout seul comme un grand et renvoyer les tâches lorsqu'elles seront terminées. Il en récupérera également de nouvelles, tout seul, comme un grand!

Si vous souhaitez rattacher votre raspberry à un manager de compte il vous suffit de taper

boinccmd --join_acct_mgr http://bam.boincstats.com votre_login votre_mot_de_passe

Pour connaitre toutes les commandes disponibles pour pouvez taper:

boinccmd

Qui vous renverra toutes les options disponibles ou vous pouvez consulter la page suivante: http://boinc.berkeley.edu/wiki/Boinccmd_tool

Dernières considérations:

Raspberry pi 3:

J'ai aussi un Raspberry pi 3 sur lequel j'ai installé BOINC. C'est intéressant car le processeur est plus récent, plus rapide et surtout il dispose de 4 cœurs, donc il est possible de faire tourner jusqu'à 4 tâches différentes. MAIS... Il surchauffe beaucoup beaucoup beaucoup!!! En faisant tourner 3 des 4 coeurs à 90% de leur temps disponible j'ai atteint une température du processeur de 85°C!!! Je ne vais pas vous faire un dessin, mais c'est pas bon! Le Raspberry risque d'endommager la carte SD, de redémarrer sans cesse, et surtout, la vitesse du processeur se débraille à 60% de sa vitesse maximale. Donc c'est inutile.

Si vous envisagez de "cruncher" comme disent les pros sur un RPI 3 alors, il faut sérieusement envisager d'y adjoindre un radiateur ET un ventilateur 5V que vous brancherez sur le port GPIO du RPI 3. Heureusement vous trouverez pléthore des boîtiers adaptés et des kits de refroidissement de raspberry pi sur amazon ou ebay pour une poignée d'Euros. C'est ce que j'ai fait et j'ai atteint une température plus raisonnable: 55°C.

Consommation électrique:

Concernant la consommation électrique du Pi. Parce que forcément maintenant qu'il tourne à 100% ou presque il va consommer plus, j'ai fait quelques calculs et:

- pour un pi modèle B+, il faut compter 2W. Soit 17.5 KWh par an (2,6€ de surplus de consommation électrique).

- pour un pi 3 modèle B+, il faut compter 5W si vous utilisez 3 des 4 cœurs. soit 44KWh par an (6.5€ de surplus de consommation électrique).

Bref, ce n'est pas ça qui devrait vous ruiner et surtout c'est vachement cool! :)

Quelques benchmark (ou parangonnage parce qu'il parait qu'il faut parler français!)

Sur mon pi3, je faisais tourner les taches:

- du projet [email protected] en 30h.

- du projet [email protected] en 20h.

- du projet [email protected] (lorsqu'il marchait en natif) en 20h aussi.

Et le GPU?

Le Raspberry pi dispose d'un vrai processeur graphique digne de ce nom. Et croyez moi, pour ses 45€, il est plutôt pas mauvais. Malheureusement, aujourd'hui, je n'ai pas trouvé de projets qui tiraient partie du GPU. Cela viendra peut être par la suite, je l'espère!

Aller sur ce, bon "crunching!"

Ajouter un Commentaire


Code de sécurité
Rafraîchir

  • 13,99 € l'unité sauvTAG pour chaussures
    4.88889 5 9 Product
  • 15,99 € l'unité Bracelet d'identification sauvTAG
    4.71429 5 7 Product