introduction
SETI@home est un grand projet d’informatique distribuée volontaire qui utilise un logiciel fonctionnant sur les systèmes des participants pour analyser les données radio du télescope spatial afin d’identifier les signaux ou les signes de la vie intelligente. SETI @ home utilise un logiciel appelé BOINC, disponible sur de nombreuses plateformes, y compris Linux.
BOINC a une application graphique mais fonctionne également via la ligne de commande. Cela permet d’exécuter SETI @ home sur une Droplet ou un autre serveur sans tête. SETI @ home nécessite très peu d’espace disque pour être utilisé - généralement, 100 Mo d’espace sont suffisants - mais peuvent utiliser autant de ressources processeur qu’il en a été donné.
Conditions préalables
-
Une gouttelette Ubuntu 14.04 ou Debian 7, n’importe quelle taille.
-
Un utilisateur sudo non root. Vous pouvez suivre les quatre premières étapes de this tutorial pour l’installation sur Ubuntu et https: // www. .digitalocean.com / community / tutorials / initial-server-setup-with-debian-7 [ce tutoriel] pour Debian.
Première étape - Installer boinc-client
SETI @ home fonctionne via le client BOINC, disponible dans les référentiels Debian et Ubuntu standard.
sudo apt-get install boinc-client
Deuxième étape - Connectez-vous à un compte SETI @ home
Avec SETI @ home, vous gagnerez un crédit SETI pour le travail effectué. Pour connecter cet hôte à un compte SETI @ home et recevoir un crédit, une clé de compte est nécessaire.
Tout d’abord, create un compte SETI @ home ou connectez-vous à votre SETI@home existant Compte. Une fois à l’intérieur, cliquez sur * Voir * à côté de * Clés de compte *.
image: https: //assets.digitalocean.com/articles/seti@home_ubuntu/1.png [Clés de compte]
La clé de votre compte SETI @ home s’affiche en haut de la page suivante. Exécutez la commande suivante avec votre clé de compte:
boinccmd --project_attach http://setiathome.berkeley.edu
À ce stade, boinc commencera à réduire les valeurs par défaut.
Pour l’instant, arrêtez le service boinc-client afin de pouvoir définir les préférences d’utilisation du processeur.
sudo service boinc-client stop
Troisième étape - Configurer les préférences d’utilisation de la CPU hôte
Par défaut, le client BOINC utilisera 100% de la CPU disponible. Dans cette étape, nous allons configurer l’hôte pour qu’il utilise moins de processeur.
-
Remarque *: Dans un environnement d’hébergement en nuage, vous devez réduire l’utilisation de votre processeur de 100% pour éviter une utilisation excessive, qui pourrait affecter les Droplets voisins.
Les préférences de l’hôte local sont définies dans le fichier + / var / lib / boinc client / global_prefs_override.xml +
, qui sera initialement vide. Un exemple de fichier est donné ci-dessous pour ce guide. Il s’agit de la configuration recommandée pour un droplet.
Editez le fichier + / var / lib / boinc-client / global prefs override.xml
.
sudo nano /var/lib/boinc-client/global_prefs_override.xml
Vous verrez un texte existant qui ressemble à ceci:
<global_preferences>
</global_preferences>
Supprimez-le et collez-le dans cet exemple de fichier.
<global_preferences>
<run_on_batteries>0</run_on_batteries>
<run_if_user_active>1</run_if_user_active>
<run_gpu_if_user_active>0</run_gpu_if_user_active>
<start_hour>0.000000</start_hour>
<end_hour>0.000000</end_hour>
<net_start_hour>0.000000</net_start_hour>
<net_end_hour>0.000000</net_end_hour>
<leave_apps_in_memory>0</leave_apps_in_memory>
<confirm_before_connecting>1</confirm_before_connecting>
<hangup_if_dialed>0</hangup_if_dialed>
<dont_verify_images>0</dont_verify_images>
<work_buf_min_days>0.100000</work_buf_min_days>
<work_buf_additional_days>0.500000</work_buf_additional_days>
<max_ncpus_pct>100.000000</max_ncpus_pct>
<cpu_scheduling_period_minutes>60.000000</cpu_scheduling_period_minutes>
<disk_interval>60.000000</disk_interval>
<disk_max_used_gb>10.000000</disk_max_used_gb>
<disk_max_used_pct>90.000000</disk_max_used_pct>
<disk_min_free_gb>1.500000</disk_min_free_gb>
<vm_max_used_pct>75.000000</vm_max_used_pct>
<ram_max_used_busy_pct>50.000000</ram_max_used_busy_pct>
<ram_max_used_idle_pct>90.000000</ram_max_used_idle_pct>
<max_bytes_sec_up>0.000000</max_bytes_sec_up>
<max_bytes_sec_down>0.000000</max_bytes_sec_down>
<daily_xfer_limit_mb>0.000000</daily_xfer_limit_mb>
<daily_xfer_period_days>0</daily_xfer_period_days>
</global_preferences>
Ensuite, nous examinerons deux paramètres dans cet exemple de fichier concernant la CPU, qui sont mis en évidence ci-dessus.
La première préférence est + cpu_usage_limit +
, utilisée pour limiter la quantité de CPU utilisée par SETI @ home. Le fichier d’exemple utilise un paramètre de 25.000000, ce qui signifie que l’utilisation du processeur est limitée à 25% maximum. 25.000000 est un bon réglage si votre machine est dédiée à une autre tâche ou à un autre service, mais que la contribution à SETI @ home est toujours souhaitée.
La deuxième préférence est + suspend_cpu_usage +
, utilisée pour suspendre temporairement l’exécution de SETI @ home lorsque l’utilisation du processeur par une autre application atteint ce niveau. Dans le fichier exemple, suspendcpuusage est défini sur 50.000000 ou 50%.
Vous pouvez en savoir plus sur les préférences de BOINC [ sur leur wiki.
Après avoir sauvegardé et fermé le fichier, démarrez boinc-client. Cela permettra à SETI @ home de commencer à effectuer des travaux.
sudo service boinc-client start
Quatrième étape - Vérifier l’hôte nouvellement ajouté
Après environ cinq minutes, le nouvel hôte devrait apparaître en ligne. Les ordinateurs connectés peuvent être visualisés dans la SETI@home account page.
image: https: //assets.digitalocean.com/articles/seti@home_ubuntu/2.png [Ordinateurs connectés]
Cinquième étape - Vérifier le statut des unités de travail
Pour afficher le statut des unités de travail ou des tâches, utilisez la commande:
boinccmd --get_simple_gui_info
Notez que ceci affiche les informations générales de votre compte SETI @ home, suivies des tâches en cours d’exécution sur cet hôte spécifique.
Voici un exemple de sortie pour –getsimplegui_info:
boinccmd --get_simple_gui_info
======== Projects ========
1) -----------
name: SETI@home
master URL: http://setiathome.berkeley.edu/
user_name: stmiller
team_name: SETI.USA
resource share: 100.000000
user_total_credit: 33159.675770
user_expavg_credit: 1409.252845
host_total_credit: 0.000000
host_expavg_credit: 0.000000
nrpc_failures: 0
master_fetch_failures: 0
master fetch pending: no
scheduler RPC pending: no
trickle upload pending: no
attached via Account Manager: no
ended: no
suspended via GUI: no
don't request more work: no
disk usage: 0.000000
last RPC: 1423684749.199424
project files downloaded: 0.000000
GUI URL:
name: Message boards
description: Correspond with other users on the SETI@home message boards
URL: http://setiathome.berkeley.edu/forum_index.php
GUI URL:
name: Help
description: Ask questions and report problems
URL: http://setiathome.berkeley.edu/forum_help_desk.php
GUI URL:
name: Your account
description: View your account information
URL: http://setiathome.berkeley.edu/home.php
GUI URL:
name: Your preferences
description: View and modify your computing preferences
URL: http://setiathome.berkeley.edu/prefs.php?subset=global
GUI URL:
name: Your results
description: View your last week (or more) of computational results and work
URL: http://setiathome.berkeley.edu/results.php?userid=9351194
GUI URL:
name: Your computers
description: View a listing of all the computers on which you are running SETI@Home
URL: http://setiathome.berkeley.edu/hosts_user.php?userid=9351194
GUI URL:
name: Your team
description: View information about your team: SETI.USA
URL: http://setiathome.berkeley.edu/team_display.php?teamid=115396
GUI URL:
name: Donate
description: Donate to SETI@home
URL: http://setiathome.berkeley.edu/sah_donate.php
======== Tasks ========
1) -----------
name: 25fe12ab.24545.17667.438086664204.12.226_0
WU name: 25fe12ab.24545.17667.438086664204.12.226
project URL: http://setiathome.berkeley.edu/
report deadline: Wed Mar 4 02:06:18 2015
ready to report: no
got server ack: no
final CPU time: 0.000000
state: downloaded
scheduler state: scheduled
exit_status: 0
signal: 0
suspended via GUI: no
active_task_state: EXECUTING
app version num: 701
checkpoint CPU time: 352.733700
current CPU time: 378.866400
fraction done: 0.088431
swap size: 110309376.000000
working set size: 40030207.999996
estimated CPU time remaining: 2505.901220
Le statut du crédit SETI @ home peut également être consulté dans votre page account] sous * Calcul et crédit *.
Conclusion
Le SETI@home forum est le meilleur endroit pour recevoir des nouvelles et poser des questions sur l’utilisation de SETI @ home.
Pour rejoindre une équipe, consultez la page team!