boinc

提供:maruko2 Note.
移動: 案内, 検索

目次

BOINC クライアント コマンドライン版の使い方

boinc コマンドをデーモンとして実行し、boinccmd コマンドでプロジェクトの管理や boinc デーモンの操作をする。

インストール

ダウンロード(推奨版)
http://boinc.berkeley.edu/download_all.php
最新のものから旧版まで
http://boinc.berkeley.edu/dl/

対応する OS 用の command-line 版をダウンロードする。

Linux 版は自己解凍ファイルなっているので、次のようなコマンドで解凍すると、BOINC というディレクトリができ、中に BOINC のファイルができる。

# sh boinc_5.8.11_i686-pc-linux-gnu.sh

Mac OS X 版は解凍し、適当なフォルダに置く。

簡単な使い方

  1. BOINC のディレクトリに移動し、boinc コマンドをデーモンとして実行する。
  2. # ./boinc --daemon
    
  3. boinccmd コマンドで、プロジェクトを追加する。
  4. 未参加のプロジェクトに参加する場合
    1. --create_account オプションで、参加したいプロジェクトにアカウントを作成する。アカウントを作成すると、アカウントキーが発行される。
    2. # boinccmd --create_account プロジェクトのURL メールアドレス パスワード 名前
      
    3. --project_attach オプションで、プロジェクトを追加する。(上記で取得したアカウントキーを使う。)
    4. # boinccmd --project_attach プロジェクトのURL アカウントキー
      
      未参加の Einstein@home に新規参加し、BOINC に追加する例
      # ./boinccmd --create_account http://einstein.phys.uwm.edu/ foo@example.com password foo
      status: Success
      poll status: operation in progress
      poll status: operation in progress
      account key: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
      # ./boinccmd --project_attach http://einstein.phys.uwm.edu/ xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
      
    すでにアカウントがあるプロジェクトに参加する場合
    1. --lookup_account オプションで、追加するプロジェクトのアカウントキーを確認する。
    2. # boinccmd --lookup_account プロジェクトのURL メールアドレス パスワード
      
    3. --project_attach オプションで、プロジェクトを追加する。(上記で確認したアカウントキーを使う。)
    4. # boinccmd --project_attach プロジェクトのURL アカウントキー
      
      アカウントを保有している Einstein@home を、BOINC に追加する例
      # ./boinccmd --lookup_account http://einstein.phys.uwm.edu/ foo@example.com password
      status: Success
      poll status: operation in progress
      account key: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
      # ./boinccmd --project_attach http://einstein.phys.uwm.edu/ xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
      
  5. BOINC を終了するには boinccmd コマンドを使う。
  6. # ./boinccmd --quit
    

BOINC クライアントの GUI アプリケーション(BOINC Manager)から操作したほうが、管理が楽にできる。その場合、boinc コマンドを --allow_remote_gui_rpc 付きで起動しておく。

# ./boinc --daemon --allow_remote_gui_rpc

BOINC Manager から接続するときのパスワードを gui_rpc_auth.cfg に書いておく。

boinc コマンド

# boinc --daemon --redirectio --allow_remote_gui_rpc
--daemon
デーモンとして起動する。
--allow_remote_gui_rpc
リモートからの GUI RPC 接続を許可する。
gui_rpc_auth.cfg ファイルに、リモート GUI RPC 接続用のパスワードを書いておく。
--redirectio
標準出力と標準エラー出力を、ファイル(stdoutdae.txt, stderrdae.txt)に書き出す。
--dir <path>
BOINC を動作させるディレクトリを指定する。
--reset_project <URL>
プロジェクトをリセットする。
boinccmd --project <URL> reset と同じ。
プロジェクトのアプリケーションがエラーになり boinc が起動できない(boinccmd で操作できない)場合に使う。
--detach_project <URL>
プロジェクトを離脱する。
boinccmd --project <URL> detach と同じ。
プロジェクトのアプリケーションがエラーになり boinc が起動できない(boinccmd で操作できない)場合に使う。

boinc コマンドの例

# boinc --daemon --dir /path/to/boinc_work_dir --redirectio --allow_remote_gui_rpc

boinccmd コマンド

# boinccmd [--host hostname] [--passwd password] command
--host hostname
指定しない場合は、localhostへ接続する。
--passwd password
boinc を --allow_remote_gui_rpc オプション付きで起動している場合は、gui_rpc_auth.cfg に記述しているパスワードを入力する必要がある。
--quit
boinc コマンドを終了する。
--create_account
未参加のプロジェクトにアカウントを作成する。
boinccmd --create_account URL email password name
--lookup_account
参加済みプロジェクトのアカウントキーを、メールアドレスとパスワードから確認する。
boinccmd --lookup_account URL email password
--project_attach URL Account_Key
プロジェクトを追加する。
boinccmd --project_attach URL ACCOUNT_KEY
--project URL { reset | detach | update | suspend | resume | nomorework | allowmorework }
boinccmd --project URL nomorework
reset
プロジェクトをリセット
このプロジェクトに関するすべてのファイルとタスクを削除し新しいタスクを取得します。完了した仕事を報告するには、先にプロジェクトを最新状態に「更新」してください。
detach
離脱
このコンピュータをこのプロジェクトから離脱させます。作業中のタスクは消えてしまいます。(完了したタスクを報告するため、離脱する前にプロジェクトの「更新」を行ってください)
update
更新
完了したタスクを報告し、最新の功績(credit)とプレファレンス(好みの設定)を取得し、可能であれば更にタスクを取得します。
suspend
一時停止
このプロジェクトが実行しているタスクを一時的に停止します。
resume
再開
このプロジェクトのタスクを再開します。
nomorework
タスクの取得禁止
このプロジェクトについて新しいタスクの取得を禁止します。
allowmorework
新しいタスクを許可
このプロジェクトについて新しいタスクの取得を許可します。

boinccmd の例

# ./boinccmd --quit
# boinccmd --host localhost --passwd password --quit
# boinccmd --host 192.168.1.123 --passwd password --create_account http://aqua.dwavesys.com/ foo@example.com password foo
# boinccmd --host 192.168.1.123 --passwd password --lookup_account http://aqua.dwavesys.com/ foo@example.com password
# boinccmd --host 192.168.1.123 --passwd password --project_attach http://aqua.dwavesys.com/ xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

boinc をデーモンとして起動。

mkdir /home/boinc
cd /home/boinc
echo "rpc_password" > gui_rpc_auth.cfg
boinc --dir "/home/boinc" --redirectio --daemon --allow_remote_gui_rpc

プロキシを利用する場合の追加設定。

boinccmd --passwd rpc_password --set_proxy_settings 192.168.100.240 8080 "" "" "" "" "" "" ""
vi cc_config.xml

cc_config.xml の内容。

<cc_config>
<options>
<http_1_0>1</http_1_0>
</options>
</cc_config>

boinc を再起動。

boinccmd --passwd rpc_password --quit 
boinc --dir "/home/boinc" --redirectio --daemon --allow_remote_gui_rpc

アカウントキーの確認。

boinccmd --passwd rpc_password --lookup_account http://einstein.phys.uwm.edu/ foo@example.com password

プロジェクトを追加する。

boinccmd --project_attach http://einstein.phys.uwm.edu/ account_key

Linux で CUDA を有効にする

NVIDIA ドライバのダウンロードサイトから、ドライバをダウンロードする。

BOINC で CUDA を有効にするためには、NVIDIA のグラフィックドライバをインストールすればよい。CUDA Toolkit (ダウンロード) などは不要。

ダウンロードしたドライバのファイルを、次のコマンドで実行する。

[shell] # sh NVIDIA-Linux-x86_64-256.44.run

kernel-devel は、使用しているカーネルと同じバージョンのパッケージをインストールする必要がある。単純に yum install kernel-devel だと、カーネルと同じバージョンの kernel-devel がインストールされない事がある。

例えば、CentOS のすべてのパッケージは http://vault.centos.org でダウンロードできる。ミラーサイトでは、マイナーバージョンのパッケー時は配布されていない事がある。

カーネルのバージョンを調べるには uname コマンドを使う。

# uname -a
Linux hostname 2.6.18-194.el5 #1 SMP Fri Apr 2 14:58:14 EDT 2010 x86_64 x86_64 x86_64 GNU/Linux

カーネルと同じバージョンの kernel-devel を rpm コマンドでインストールする。

# rpm -ihv kernel-devel-2.6.18-194.el5.x86_64.rpm

Scheduler request failed: Error 417 の対処方法

HTTPプロキシを設定(利用)している場合、次のようなエラーが起きる。

[Einstein@Home] Scheduler request failed: Error 417

原因は、boinc とプロキシサーバーとの通信時に HTTP1.1 プロトコルを使用しているためらしい。

HTTP1.0 にするとエラーが出なくなる。

boinc を動作させるディレクトリ(--dir で指定するディレクトリ)に cc_config.xml という名前のファイルを作成し、内容を次のようにする。

<cc_config>
<options>
<http_1_0>1</http_1_0>
</options>
</cc_config>

boinc を再起動すれば、エラーが出なくなる。

参考:

脚注

  1. 2010/08/27時点
LINEで送る このエントリーをはてなブックマークに追加
個人用ツール
名前空間
変種
表示
操作
案内
ツールボックス

注目のページ

このサイトのはてなブックマーク数