BOINC(Berkeley Open Infrastructure for Network Computing)
BOINCは、ボランティアによる分散コンピューティングを可能にするオープンソースのプラットフォームです。寄付された未使用のCPU・GPU時間を、天文学、生物医学、気候科学などの研究に活用できます。
概要
BOINC(Berkeley Open Infrastructure for Network Computing)は、ボランティア型の分散コンピューティングを実現する、無償のオープンソース・ミドルウェア・プラットフォームである。研究グループは、プロジェクト用サーバーとウェブサイトを設置し、小規模な計算タスクを、参加者から提供された数千台のコンピュータへ配布できる。ボランティアはクライアントプログラムをインストールして支援したいプロジェクトを選択する。コンピュータがアイドル状態の間、クライアントはワークユニットをダウンロードし、科学アプリケーションを実行して、その結果をプロジェクトサーバーへ返送する。
画像ギャラリー
2 画像アーキテクチャと構成要素
BOINCシステムは、相互に連携する複数の構成要素から成り、大規模な分散計算を簡素化している。
- プロジェクトサーバー:ワークユニットを生成し、返送された結果を受け付け、検証と記録管理を行う。
- クライアントソフトウェア:ボランティアのコンピュータ上で動作し、スケジューリング、チェックポイント処理、データのアップロードとダウンロードを扱う。
- プロジェクトアプリケーション:BOINCの制御下で実行される科学プログラムまたはシミュレーションであり、多くの場合、複数のプラットフォーム向けにコンパイルされる。
- ウェブインターフェースと統計:プロジェクトのウェブサイトは、文書、チームのランキング、参加を管理するためのツールを提供する。
歴史と開発
BOINCは、カリフォルニア大学バークレー校における初期のボランティア・コンピューティングの取り組みから発展し、2000年代初頭に汎用フレームワークとなった。単一プロジェクトの取り組みが切り開いたモデルを広げるために設計され、共通のサーバーおよびクライアント・アーキテクチャ、クロスプラットフォーム互換性、オープンな開発モデルを提供することで、複数の科学分野を支援している。
ボランティアの参加方法
BOINCの利用開始は、通常は簡単である。一般的な手順は次のとおりである。
- 対応するデスクトップ、ノートパソコン、またはその他のデバイスにBOINCクライアントをインストールする。
- クライアントまたはプロジェクトのウェブサイトを通じて、1つ以上のプロジェクトに参加する。
- CPU・GPUの利用、ネットワーク活動、実行時間帯について設定し、個人の資源利用やプライバシーに関する考え方に作業内容を適合させる。
ボランティアはいつでもプロジェクトを変更でき、チームに参加し、獲得したクレジットや貢献度の統計を確認できる。
用途と主なプロジェクト
BOINCは幅広い科学研究を支援している。最も広く知られる初期の例は、異常な信号を探すために電波望遠鏡のデータを解析したSETI@homeである。ほかにも、タンパク質構造の解析、マラリアなどの感染症の研究、気候および大気現象のモデル化、銀河構造のマッピングを行うプロジェクトがBOINC上で実行されている。詳細や特定のプロジェクトページを探すには、BOINCクライアントの配布情報、タンパク質研究の研究ページ、マラリアを扱うものなど疾病に焦点を当てたプロジェクト、天の川銀河に関する研究のような銀河マッピングの取り組みを参照できる。
留意点と他方式との違い
ボランティア型分散コンピューティングは、異種で参加者が所有するハードウェアを活用する点で、組織内の計算クラスターや商用クラウドサービスとは異なる。科学的な信頼性を維持するため、BOINCプロジェクトでは一般に、結果を検証するための冗長化と相互照合が用いられる。重要な検討事項には、ソフトウェアのセキュリティ、参加者のプライバシー、電力および環境面のコスト、公正なクレジット配分がある。こうした課題はあるものの、BOINCは計算能力を費用効率よく拡張し、専門家以外の人々を研究に参加させる公開性の高い手段であり続けている。
関連項目
著者
AlegsaOnline.com BOINC(Berkeley Open Infrastructure for Network Computing) Leandro Alegsa
URL: https://ja.alegsaonline.com/art/12720