Berkeley Open Infrastructure for Network Computing

Berkeley Open Infrastructure for Network Computingの最新ニュースをまとめて検索!

BOINC
BOINCの現在のロゴ
BOINCのGUIフロントエンド
開発元 カリフォルニア大学バークレー校
最新版 6.10.18 (2009年11月09日)
対応OS クロスプラットフォーム
種別 グリッド・コンピューティング
ライセンス GNU Lesser General Public License
公式サイト http://boinc.berkeley.edu/
  

Berkeley Open Infrastructure for Network Computing(バークレー オープン インフラストラクチャ フォー ネットワーク コンピューティング)とは、分散コンピューティングプロジェクトのプラットフォームとして開発されたプログラムである。開発元はカリフォルニア大学バークレー校。略称は BOINC

SETI@home の運用実績をもとに、より柔軟で汎用的なシステムを目指している。BOINC の公開後、SETI@home は BOINC ベースへと移行し、BOINC を使用しない単独プログラム用 SETI@home は2005年12月に運用を終了した。

目次

[編集] BOINC の特徴

[編集] 参加者側からみて

参加者が最初に導入するのは、後述する BOINC クライアントであるが、ここではクライアント側ソフトウェアの構造から説明を始める。 まず、参加者側に配置されるクライアント・ソフトウェアが稼動するのに必須な部分は以下の2つである。

  • (a) アプリケーション: 分散コンピューティング・プロジェクトのそれぞれが目的とする計算をする部分
  • (b) コア・クライアント: どのプロジェクトでも使う共通部分(運用サーバとの送受信機能や 上記の(a)部分から呼び出すライブラリ機能)

前者(a)アプリケーションは、各プロジェクトのサーバから参加者側へダウンロードされて複数プロジェクトが共存できる。

上記の必須部分 (a)+(b) に加えて、操作を楽にするための GUI が追加できる。 GUI 部分と、(a)、そして(b)はこのように構造上分離されているが、今ではほとんどのプラットフォーム向けにそれぞれ GUI が用意されている。 このため参加者からみると GUI がオプションであるとは意識されていないことがほとんどである。 配布に際しても (b)コア・クライアントと GUI は一体として配られているので、コア・クライアント+ GUI を BOINC クライアントと呼ぶことが多い。つまり、

  • (c) BOINC クライアント: コア・クライアント+ GUI 部分

である。 たとえば、Windows用や、Mac OS X用の標準GUI版の BOINC クライアントがある。GUI の中には、機能を絞ったシンプルな画面と細かい操作のできる Advanced View の 2層構造になっているものもある。 コア・クライアントには、スクリーンセイバーを組込む仕組みが用意されており、旧来の SETI@home でもあったようなグラフィカルな動作画面が表示される。スクリーンセイバーは アプリケーションごとに用意するものなので、スクリーンセイバーが表示されないプロジェクトもある。以下ではBOINC クライアントを、 主にコア・クライアント + GUI の意味で使うが、さらにおおまかに、(a)も集合的に含めたクライアント側ソフトウェア全体を意味することもある。

BOINC ベースの分散コンピューティングプロジェクトへの参加者は、まず BOINC クライアントを入手し、プロジェクトへの参加登録は BOINC クライアントを通じて行う [1]。参加登録が終わるとただちにそのプロジェクトのアプリケーションと最初の仕事が自動的にダウンロードされ、運用が始まる仕組みである。アプリケーションの新しいバージョンがリリースされた際も、BOINC クライアントが自動的にダウンロードする。稼動の一時停止や再開、プロジェクトからの脱退は、BOINC クライアント上で指示できる。

複数のプロジェクトに同時に参加する場合も、BOINC クライアント上から参加手続きをすればよい。同時に稼動できるプロジェクトは CPU コア一つにつき一プロジェクトのみだが、一定時間ごとに BOINC クライアントが自動的にプロジェクトを切り替える。

BOINC クライアントの設定や各プロジェクトの設定、プロジェクト間の稼動比率の設定は、現状では BOINC クライアント上からは設定できない。プロジェクトのウェブサイトに設けられたユーザーページ上で設定変更し、後ほど変更情報を BOINC クライアントに取り込む方法が採られている。

[編集] プロジェクト側からみて

サーバ運用の手法が確立しているため、新たにプロジェクトを起こす際に一からインフラ部分を整備する労力を要しない。また、関連プログラムはオープンソース化されている。

SETI@home で得られた分散コンピューティングの運用ノウハウを他の科学研究にも役立てることを主眼としているため、サーバ運用の省力化を念頭に置いて開発されている。通常、分散コンピューティングでは計算結果の信頼性を高めるため、同一の仕事を複数の参加者に配布して返却された計算結果を比較している。この、仕事の複製 → 配布 → 計算結果の回収 → 真偽判定 → 参加者への功績値の付与 → 不要ファイルの抹消、という一連の運用が自動化されている。

旧SETI@home では、終了直前の仕事を複製しておき不正に功績値を稼ぐチート行為が問題となったが、個々の仕事がどの参加者のどのコンピュータに配布されたかを把握している BOINC ではこのようなことはない。

BOINC クライアントでは、自身が走っているコンピュータの情報を細かく調べてプロジェクト側に申告している。これにより、特定のプラットフォームや CPU の計算能力、プロジェクトに提供するメモリやハードディスク容量の多寡によって、参加の可否や配布する仕事の軽重を選択できるようになっている。

[編集] BOINCのアーキテクチャ

BOINCは、プロジェクト主催者が運営するサーバに対し、参加マシンはコアクライアントを通してHTTPを用いてアプリケーションおよび計算ユニットを取得し、ローカルに処理するモデルとなっている。

幅広くボランティアを募って行うプロジェクトの場合、扱うデータ量に対するCPUによる計算量の比が大きい処理が好ましい。商用インターネット接続はコストが掛かりまたネットワーク帯域が必ずしも広くないため、特に一日あたり1Gバイト以上のデータを送受信するようなアプリケーションでは、自組織内のコンピュータクラスタを用いたほうが安価である[2]

[編集] プロジェクトサーバ

プロジェクト主催者のサーバは、次のような構成をとる。

  • プロジェクト バックエンドサーバ
    参加クライアントに配布するプログラムや計算ユニットをデータサーバに供給する、また参加者から送られてきた計算結果を処理するサーバ
  • BOINCサーバ群
    • スケジューリングサーバ群
      参加クライアントと通信を行う。
    • 計算ユニット、計算結果、参加者アカウントを管理するリレーショナルデータベースサーバ
    • バックエンドサーバとBOINCサーバ群を連携するユーティリティ
    • プロジェクト参加者や開発者のためのWebインタフェース
    • データサーバ群
      参加クライアントへのファイル配信と計算結果の収集を行う。これらの通信はHTTPを使って行う。

[編集] BOINCアプリケーション

この節は執筆の途中です この節は執筆中です。加筆、訂正して下さる協力者を求めています

[編集] プロジェクト一覧

[編集] 現在アカウント作成・稼働可能なもの

オープンβのプロジェクトも含む。

[編集] 天文学

[編集] 気候学

  • ClimatePrediction.net(英語)
    長期的気候予測技術の改善・気候変動調査
    • CPDN Beta
      Climateprediction.net 次期バージョンのβテスト。

[編集] 地震学

[編集] 数学

[編集] 物理学

[編集] 化学

[編集] 構造生物学

[編集] 分子生物学

[編集] 疫学

[編集] 認知科学

  • MindModeling@home(英語)
    MindModeling@homeのβテスト。ACT-R上での認知モデルの構築とその評価を行う。

[編集] 計算機科学

[編集] アニメーションレンダリング

[編集] パズル

[編集] テスト、その他

  • Gerasim@home
  • Pirates@Home(英語)
    テストプロジェクト。もともとはEinstein@homeのスクリーンセーバ用画像を制作するプロジェクトだったが、現在は分散コンピューティングについて理解するための学習教材に転用されている。
  • VTU@home
    テストプロジェクト。本格的なプロジェクトを立ち上げる前の運用習熟で、素因数分解の単純な総当り式による素数探索を行うダミーワークが配布されている。

[編集] オムニバス

  • World Community Grid
    #World Community Gridを参照。
  • yoyo@home
    BOINCを採用していない分散コンピューティングプロジェクトに対し、BOINC クライアントで参加できるよう仲介するラッピングプロジェクト。以下のプロジェクトに対応している。
  • Ibercivis(英語)
    複数の分散コンピューティングの受け皿となるプロジェクト。
    • adsorcion
    • docking
    • fusion
    • nanoluz
    • nanotest
    • neurosim
    • materiales (16、32、64、128、24、48)
  • AlmereGrid Boinc Grid
    複数の分散コンピューティングの受け皿となるプロジェクト。世界最初の市営分散コンピューティングプロジェクトでもある。運営元はオランダ・フレヴォラント州にある町アルメレである。

[編集] 参加者の募集を停止中のもの

クローズドβ、あるいは参加者数を限定して運用しているプロジェクト群。

[編集] 運用にむけて準備中のもの

参加者登録は可能なものの、まだワークの配布が始まっていないプロジェクト。

[編集] 活動を休止中のもの

長期に渡って運用停止していたり、運営側が休止を宣言したプロジェクト。

[編集] BOINC の技術をベースにした分散コンピューティングプロジェクト

[編集] World Community Grid

IBM 社の支援の下、複数の医療系プロジェクトを展開している。既にいくつかのプロジェクトが完了、もしくはフェーズ2に移行している。World Community Grid の項も参照のこと。

United Devices 社のシステムで運用されているプロジェクトであったが、United Devices社のクライアントのサポートは2008年6月で中止され[3]、一方これと平行して2005年11月からBOINC クライアントからも参加できるようになり、現在はBOINCクライアントのみのサポートとなった[4]。当初は脇役的な扱いで BOINC からの参加方法も分かり辛かったが、grid.org の終了前後から主客が逆転し、ウェブサイトでの参加登録後に現れるクライアントダウンロードページでも BOINC クライアントが上位に表示されるなど、UD クライアントの方が脇へと追いやられているという変遷もあった。

WCG サイトからの参加手続きは通常とは若干異なるが、これは初心者に対する配慮から WCG プロジェクトに参加した状態でのインストールになっていることによる。そのため、BOINC で WCG に参加する場合は、WCG サイトからインストールするのが最も簡単で手間がかからない。また BOINC クライアントは最新版が使用されており、インストール後にWCG以外のプロジェクトを追加する場合も特に制限はなく、別途 BOINC に参加した人との差異はないと言って良い。

2007年10月3日BOINC クライアントからの功績値は68.8%に達し、2008年6月26日には100%となり、UDクライアントは使命を終えた。

特徴としては BOINC での功績値(クレジット)とは別に、UD クライアントからの参加者との整合性を取る必要性からポイント(1クレジット=7ポイント)による功績値集計を行っていた。ただBOINC Stats 等では、通常のクレジットで集計がなされる点に違いは無かった。

グラフィック表示可能。(ただしグラフィックサイズは640×480px)

BOINCと違い、プロジェクト単位でのユーザー登録ではなく、World Community Gridで1つのアカウントを作成する仕組みである。1つのアカウントの元でWCG全てのプロジェクトに参加するか、個々のプロジェクトに参加するかの選択設定も行える。WCGでは新規プロジェクトの始動と終了が比較的に頻繁に行われるので全てのプロジェクトに参加する選択をすれば新規プロジェクトも自動的に参加するのでその設定が望まれる。

なおそれぞれのプロジェクトの進行中や終了などの状態の詳細はWorld Community Gridを参照。

[編集] cell computing βirth

BOINC をベースに運用されている商用プロジェクト。2008年3月末をもってすべての活動を終了した。cell computing βirth の項も参照のこと。

BOINC 標準クライアントからの参加はできないが、cell computing βirth のクライアントから各 BOINC プロジェクトへの参加は可能。 ただしクライアントが BOINC クライアント ver.4 をベースとしているため、ver.5 以降のクライアントを前提とした BOINC プロジェクトには参加できない。

  • CHRONOS
    ヒトゲノム染色体間法則性解明プロジェクト
  • sekigahara(セキガハラ)
    関ヶ原の合戦映像製作プロジェクト

[編集] BBC Climate Change Experiment

ClimatePrediction.netのBBC協賛版。1920年から2080年までの160年間もの気候変動をシミュレートする。

ウェブサイトでは独自クライアントをダウンロードするよう誘導されるが、BOINC 標準クライアントからも問題なく参加できる。

ワークの配布は2007年1月で打ち切られ、運用結果をもとにイギリス本国で特番が放映された。(ダイジェスト版は YouTube で閲覧できる。[5]既に参加者登録は終了しており、現在は解析中ワークの返却のみ受け付けている。

[編集] 関連項目

[編集] 脚注

  1. ^ BOINC クライアントのバージョン4までは、まずプロジェクトのウェブサイト上で参加登録を行い、メールで送られてきたアカウントキーを BOINC クライアントに入力する必要があった。一部プラットフォームではバージョン5 以降の BOINC クライアントが提供されておらず、ウェブサイト上での参加登録ページは現在も残されている。
  2. ^ Overview of BOINC
  3. ^ Community Advisor (2008-06-04). "2008年6月26日をもってUDクライアントからBOINCクライアントに全て移行完了" (英語). World Community Grid. 2009-01-11 閲覧。
  4. ^ "World Community GridのBOINCクライアントの使用開始2005年11月" (英語). World Community Grid. 2009-01-11 閲覧。
  5. ^ climateprediction.net - Results Programme Documentary - YouTube (Adobe Flash video)

[編集] 外部リンク

[編集] チュートリアル(使い方の指導)

[編集] 外部統計サイト

最終更新 2009年12月3日 (木) 00:02 (日時は個人設定で未設定ならばUTC)。
【Berkeley Open Infrastructure for Network Computing】変更履歴

ご利用上の注意