介绍
SETI @ home的就是对参与者系统上运行的软件来分析,以确定信号或智能生命迹象的太空望远镜无线电数据的大型志愿者分布式计算项目。 SETI @ home使用称为BOINC的软件,可在包括Linux在内的许多平台上使用。 BOINC有一个图形应用程序,但也通过命令行工作。这使得在Droplet或另一个无头服务器上运行SETI @ home非常可行。 SETI @ home需要很少的磁盘空间用于使用 - 通常,100MB的空间就足够了 - 但是可以利用它给出的CPU数量。
先决条件
- 一个Ubuntu 14.04或Debian 7 Droplet,任何大小。
- 一个sudo非root用户。您可以按照前四步的本教程为在Ubuntu上安装程序, 本教程为Debian。
第一步 - 安装boinc-client
SETI @ home通过BOINC客户端运行,该客户端可在标准的Debian和Ubuntu存储库中使用。
sudo apt-get install boinc-client
第二步 - 连接到SETI @ home帐户
使用SETI @ home,您将为完成的工作赚取SETI信用额。要将此主机连接到SETI @ home帐户并接收信用,需要一个帐户密钥。 首先, 创建一个SETI @ home的帐户或登录到您现有的SETI @ home帐户 。 一旦进入,点击
查看旁边的
帐户键 。
您将在下一页的顶部看到您的SETI @ home帐户密钥。使用您的帐户密钥运行以下命令:
boinccmd --project_attach http://setiathome.berkeley.edu account_key
此时,boinc将以默认值开始处理。 现在,停止boinc客户端服务,因此可以设置CPU使用首选项。
sudo service boinc-client stop
第三步 - 配置主机CPU使用偏好
默认情况下,BOINC客户端将使用100%的可用CPU。在这一步中,我们将配置主机使用更少的CPU。
注意 :在云托管环境中,您需要从100%降低CPU使用率,以避免过多的高使用率,这可能会影响到相邻的Droplet。 本地主机偏好在文件中设置
/var/lib/boinc client/global_prefs_override.xml
,这将是空的开始。下面给出了本指南的示例文件,这是Droplet的推荐配置。 编辑文件
/var/lib/boinc-client/global_prefs_override.xml
。
sudo nano /var/lib/boinc-client/global_prefs_override.xml
您将看到一些现有的文本,如下所示:
<global_preferences>
</global_preferences>
删除它,并粘贴此示例文件。
<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>
<suspend_cpu_usage>50.000000</suspend_cpu_usage>
<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>
<cpu_usage_limit>25.000000</cpu_usage_limit>
<daily_xfer_limit_mb>0.000000</daily_xfer_limit_mb>
<daily_xfer_period_days>0</daily_xfer_period_days>
</global_preferences>
接下来,我们将在此示例文件中检查有关CPU的两个设置,这些设置在上面突出显示。 第一选择是
cpu_usage_limit
,它是用来限制的CPU所使用的量
的SETI @ home 。示例文件使用25.000000的设置,意味着CPU使用率限制为最大25%。 25.000000是一个很好的设置,如果您的机器专用于另一个任务或服务,但贡献SETI @ home仍然需要。 第二优先是
suspend_cpu_usage
其用于从操作暂时中止的SETI @ home时由其他应用CPU使用率达到这一水平。 在这个例子中的文件,暂停
CPU使用率设置为50.000000,或50%。 你可以阅读更多关于BOINC的喜好
对自己的维基 。 保存并关闭文件后,启动boinc-client。这将允许SETI @ home开始执行工作。
sudo service boinc-client start
第四步 - 验证新添加的主机
大约五分钟后,新主机应在线上显示。连接电脑可以在里面观看
的SETI @ home帐户页面 。
第五步 - 检查工作单元的状态
要查看工作单元或任务的状态,请使用以下命令:
boinccmd --get_simple_gui_info
请注意,这将显示您的一般SETI @ home帐户信息,后面是此特定主机上当前正在执行的任务。 下面是
简单的 --get例如gui_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
SETI @ home的信用状况也可以里面您查看
帐户页面下的
计算和信用 。
结论
在
SETI @ home的论坛是新闻和有关运行SETI @ home的问题的最佳场所。