BOINCで科学研究計算に参加しよう!インストール方法と使い方

BOINC (ボインク) とは、世界中のPCの空き計算力を集めて科学研究に必要な計算に使うための分散計算プラットフォームです。

PCに BOINC のクライアントソフトを入れると、バックグラウンドで科学プロジェクト(数学・天文学・医学・分子生物学など)の計算タスクを自動で処理してくれます。

計算結果はそれを必要とする研究者や団体の科学プロジェクトにネット経由で送信され、多くの参加者の計算を合わせることで大規模コンピューターとして機能します。

つまり普段使っているPCの余剰計算力や余らせているサブPCの処理能力を使って、簡単操作で最先端の科学研究に貢献できる素敵なプロジェクトです。(わくわく…!!!)

 

(だいぶ昔に一度参加したことがあるのですが、PCを買い替えてから長らく中断してしまってたので改めて再開してみました)

 

以下、BOINC クライアントソフトの導入手順と実際の計算プロジェクトへの参加手順を記載します。

 

BOINC ソフトのインストール方法

Windows / macOS / Linux のどれにもソフトが存在するのでBOINCに参加できます。
(Androidアプリも一応ある)

以下、手順は Windows で説明します。

 

BOINC のダウンロード方法

まずは公式サイト (カリフォルニア大学バークレー校) に移動します。

リンク:https://boinc.berkeley.edu/

 

画像赤枠で囲った、「BOINCをダウンロード」ボタンをクリックします。

BOINC のダウンロード方法:ダウンロードページに移動

 

「BOINCをダウンロード」ボタンをクリックします。
(お使いのPCに合ったファイルが自動で表示されています)

BOINC のダウンロード方法:ダウンロードボタンをクリック

 

ボタンを押すとファイルのダウンロードが始まります。

 

BOINC のインストール方法

ダウンロードが完了したら、そのファイルを実行します。

(表示名はバージョンによって異なります。画像は「boinc_8.2.8_windows_x86_64.exe」の場合。)

 

※起動時に「このアプリがデバイスに変更を加えることを許可しますか?」と表示されたら「はい」を選択します。

 

インストール画面が立ち上がります。

「Next」をクリックします。

BOINC のインストール方法:インストール画面のダイアログ

 

利用規約を読んで「I accept the terms …」(同意) を選択してから「Next」をクリック。

 

「Next」をクリック。
(※「Advanced」を押せばインストール先の変更などができます。私はデフォルトのままにしました。)

 

「Install」をクリックすると、インストール作業が始まります。

 

数秒でインストールは完了し、この画面になります。

「Finish」をクリック。

 

 

BOINC ソフトの初期設定・プロジェクトへの参加方法

起動 ~ プロジェクト参加・チーム選択

起動すると次の画面になります。

(ありがたいことに、有志が日本語化してくれています…!!)

BOINCの起動画面

 

読み込み中で操作できないのでしばらく待つと、次のポップアップが自動で表示されます。
(自動で表示されなかった場合は、画面の「プロジェクトを追加」ボタンを押してください)

BOINCのプロジェクト選択画面

 

参加する科学研究プロジェクトの選択画面です。

もちろん後から自由に追加・変更できるので、今回はお試しに「PrimeGrid」というプロジェクトに参加してみます。

PrimeGrid
特別な形の巨大素数を、世界中のPCを繋いで協力して探索するプロジェクト。
探索対象の素数の形式は様々で、際立った発見なら自分の名前を発見者として残せることも…!
数学の未解決問題の進展に直結するような素数を探索することもできる
(↑「シェルピンスキーの問題」など)

 

種類から「Mathematics, computing, and games」を選び、リストから「PrimeGrid」を選択して「次へ」をクリックします。

BOINCのプロジェクト選択画面:PrimeGridを選択する

 

通信画面になるので数秒待ちます。

 

アカウント作成画面になるので、メールアドレスを入力してパスワードを設定します。
(※他のPCで既にアカウントを作成済みなら「はい」の方を選んでログインしてください)

BOINCでPrimeGridに参加する方法:アカウントの作成

このメールアドレスは後から変更もできます。

注意:後述の「チーム」に所属した場合、チームの創設者は自分がここで入力したメールアドレスを知ることになります。

 

数秒待つと追加完了画面になります。

「終了」をクリックします。

BOINCでPrimeGridに参加する方法:プロジェクトの追加完了

 

PrimeGrid のサイトのニックネーム設定画面に飛ぶので、ニックネームを入力して国名を選択し、OKを押します。

名前や国名は後からでも変更できます。

(全角文字も使えますが統計サイトで文字化けするので半角英数字推奨)

BOINCでPrimeGridに参加する方法:PrimeGridのサイトで名前と国名を登録

 

続いてチーム選択画面になります。

素数探索にあたり、チームに所属することができます。

所属すれば自分の探索成績がチームとしての成績にも反映されるので、チーム対抗戦みたいな感じで楽しく盛り上がれます。

 

チームといってもノルマとかきつい縛りがあるわけではないので、特に交流目的がなくても適当に気になるチームに入って大丈夫だと思います…!

国名を「Japan」にして、「活動中のチームだけを表示」にチェックを入れて検索をかけます。

BOINCでPrimeGridに参加する方法:PrimeGridのサイトで参加チームを検索

 

現在活動しているチームの一覧が表示されました。

UDがん研究プロジェクト(他の分散コンピューティングプロジェクト) で世界1位の成績を上げ研究に貢献したことで有名なあの Team 2ch もリストに入っていますね…!
(ちなみに直近だと2024年8月に素数階乗素数の世界記録を Team 2ch のメンバー Itsuki Kadowaki さんが更新していました)

他にもニコ動民やMIXI民のチームもありますね。

BOINCでPrimeGridに参加する方法:PrimeGridのサイトでの日本のチーム検索結果

 

私は BOINC@TOKYO を選んでみました。

(チームは後から変更することもできます)

検索結果の参加したいチーム名のところをクリックするとチーム概要画面に移ります。

「このチームに参加する」を押せばチームへの参加が完了しますが、記載されている注意点をご確認ください。

BOINCでPrimeGridに参加する方法:PrimeGridでチームに参加する方法

 

初期設定だと最初に登録したメールアドレスをチーム創設者が把握できるような仕様になっています。

メニューの Your Info から「あなたのアカウント」ページに移動して「Eメールアドレス」の変更リンクをクリックして公開されても良いメアドに変更するか、次の方法でメアドがチーム創設者に公開されない設定に変更してください。

  1. メニューの Settings から「PrimeGrid についての好みの設定 (プリファレンス)」ページへ移動
  2. 設定一覧表の下の方にある「PrimeGrid プリファレンスを編集する」をクリック
  3. 「PrimeGrid および(所属している場合)あなたのチームから、Eメールを送信してもよろしいですか?」のチェックを外す
  4. ページ最下部の「プリファレンスを更新する」ボタンを押す

※肝心の巨大素数発見お知らせメールとかも来なくなりそうだからチェックは極力外さないほうが良さそう
※他にも気になる設定があればお好みで変更してください。

 

設定が済んだら先ほどのチーム概要画面で「このチームに参加する」をクリックすればチーム参加が完了です。

 

発見者報告設定

もし自分が発見した素数について実名で記録を残したい場合は追加の設定が必要です。

(巨大素数をもし発見できたら、素数データベースの PrimePages に自分の名前付きで素数を登録できます)

 

メニューの Settings から「PrimeGrid についての好みの設定 (プリファレンス)」ページへ移動します。

設定一覧表が表示されるので、下の方にある「PrimeGrid プリファレンスを編集する」をクリックします。

 

設定編集画面で「Reporting primes to the Prime Pages」(Prime Pages への素数の報告) という欄があるので、次のように設定を変更します。

BOINCでPrimeGridに参加する方法:PrimeGridのサイトで素数発見時の報告設定をする方法

 

  • Permission is given to PrimeGrid to report primes under my name 「PrimeGrid に自分の名前で素数を報告する権限を与える」
    ↑このチェックをONにする
    ↑PrimeGrid が自動で素数の報告までやってくれる
  • Report primes as (REAL first name and last name)「"本名フルネーム" で素数を報告する」
    ↑報告に名前を使いたい場合、本名のみ許可されている
    ↑ニックネーム不可。匿名にしたい場合は Anonymous「匿名」と入力
    ↑ローマ字で 名前・名字 の順で入力
  • Send an email when automated report has been executed「自動レポートが実行されたときにメールを送信する」
    ↑このチェックをONにする
    ↑もし記録級の素数が発見されて自動報告されるなら、そのタイミングでお知らせメールをくれる

 

 

計算タスクの実行

※この後も引き続き PrimeGrid のプロジェクトを例に説明します。

 

自動で計算が開始

いよいよ計算への参加です…!!

(といっても、ソフト立ち上げ時に勝手に計算タスクが降ってきて既に自動実行が始まっていると思います)

 

自動実行されている場合、このように計算が開始されてからの経過時間と残り時間が表示され計算の進捗が緑のバーで表示されています。

BOINCの画面:プロジェクトの計算中画面

 

今計算しているタスクが何の探索なのかは一番上の「タスク」欄から確認できます。

(画像の場合、「Sierpinski/Riesel Base 5 Sieve」。 これは素数探索前のふるい分けタスク。)

 

それぞれのプロジェクトが具体的に何を探索しているのか、日本語で概要をまとめてくれているページがありました。

リンク:PrimeGrid:各種プロジェクトの説明 - Team 2ch

 

計算はバックグラウンドで進んでいるので、あとは基本的に待つだけです。

PCで別の重い作業をする時など、一旦中断したい場合は「一時停止」ボタンを押せばOKです。

基本的には同時に複数の計算タスクが処理されているので、各々の進捗状況は「タスク」欄をクリックしてリストから選べば確認できます。

BOINCの画面:プロジェクトのタスク選択

 

計算したいプロジェクトを選択する

降ってきたタスクを自動で実行する形ですが、どのプロジェクトのタスクが配信されるようにするかは設定で変更できます。

設定は PrimeGrid のサイト側で行います。

 

サイト上部メニューの Settings から「PrimeGrid についての好みの設定 (プリファレンス)」ページへ移動します。

設定一覧表が表示されるので、下の方にある「PrimeGrid プリファレンスを編集する」をクリックします。

 

下の方に各サブプロジェクトに参加するかどうかのチェック表があるので、参加したい物にはチェックを入れます。

(一部は計算にGPUが使用できる物もあります)

注意:赤線の Recent average CPU time 欄に1タスクの平均所要時間が 時間 : 分 : 秒 の形式で記載されていますが、計算に数十時間かかるタスクも多数あるので注意してチェックを入れてください。

PrimeGridで参加するサブプロジェクトを選択する方法

 

 

計算結果・成績の確認 (PrimeGridについて)

PrimeGrid のサイトから計算処理の成績を確認できます。

※ログアウトされてしまっている場合はこちらから改めてログインしてください。

 

サイトにアクセス後、メニューの「Your Info」のところから各情報にアクセスできます。

PrimeGridで自分の成績を確認する方法

 

あなたのアカウント

メールアドレス・パスワード・ユーザー名などの変更やBOINC・PrimeGridの設定にこちらからアクセスできます。

成績の概要も「計算と功績」欄に掲載されています。

(↓始めたばかりで表示が寂しいですが(笑) )

PrimeGrid:あなたのアカウント画面

 

処理した計算量に応じて功績として credit (クレジット) の値が与えられ、今まで獲得した総量が「総功績」欄に掲載されています。

Badges 欄は、各サブプロジェクトごとで獲得したバッジが一覧で表示されています。(後述)

Discoveries 欄には、何かしらの発見があった場合にそれが表示されます。
(リンクをクリックすれば詳細に飛べます)

※ちなみに画像の APs (0/1) は、素数からなる等差数列 (Arithmetic Progression) について、発見数:0、ダブルチェック数:1 という状態です。第一発見者ではなくダブルチェック者。

 

Your tasks

自分が計算中・計算済みのタスクが一覧で表示されます。

表示されているリンクをクリックすれば計算中・保留中・検証済 など状態別に絞り込んだり、参加サブプロジェクト別に絞り込むことができます。

 

Your badges

各サブプロジェクト (各形式の素数探索) について、それぞれ計算で得たクレジット量に応じてバッジが獲得できます。

PrimeGrid:Your Badges 画面で獲得したバッジを確認

 

  • Project:計算を実行した各(サブ)プロジェクト
  • Current Credit:現在のクレジット量
  • Current Badge:現在獲得しているバッジ
  • Credit Level for Next Badge:次のバッジ獲得に必要なクレジット量
  • Next Badge:次のバッジ
  • Credit Needed for Next Badge:あと何クレジットで次のバッジが獲得できるか
    ↑Pending credit は計算済みだけど検証待ちで保留中のタスクのクレジット値。検証が終わればその分のクレジットが追加される

 

長年このプロジェクトに参加しているユーザーのバッジやクレジットを見ると凄いことになっています。(つよすぎて尊敬)

 

※チーム成績の確認

あなたのアカウントページの「コミュニティ」表の「所属チーム」のところのリンクから、チームページに飛べます。

チームメンバー全員が今までに得たクレジットの合計値が「総功績」欄に掲載されています。

表の「メンバーの総数」欄にある「表示する」リンクをクリックすれば、各メンバーのバッジと総功績の一覧表が閲覧できます。

 

全体成績・ランキングの確認

PrimeGrid に限らず BOINC には様々なプロジェクトがあるので、それらを合算した総合成績も存在します。

 

個人の成績・国内/世界ランキング

自分個人の成績を確認したい場合は以下の統計サイトにアクセスします。

リンク:BOINC STATS

 

左上の検索ボックスに自分のユーザー名を入れて検索をかけます。

BOINCで自分の成績や国内・世界ランキングを確認する方法:ユーザー名で検索

 

検索結果から自分のアカウントを探し、一番右の Options 欄のグラフマークをクリックします。

BOINCで自分の成績や国内・世界ランキングを確認する方法:検索結果から自分の結果に飛ぶ

↑よく見たら何か文字化けしています。改めて確認したらユーザー名末尾に全角スペースが入ってしまっていたので後で変更しました。全角文字は文字化けするので注意。

 

成績表が表示されます。

BOINCで自分の成績や国内・世界ランキングを確認する方法:自分の成績表の見方

Project name のところに各プロジェクトが表示されていますが、一番上の「BOINC combined」が全てのプロジェクトの成績を合算したものです。

つまり合算成績と、各プロジェクト別の成績を確認できます。
(1つのプロジェクトしか参加していなければ表示は上記の通り2行です)

  • World Position世界順位
  • Team positionチーム内順位
  • Country position国内順位

順位のところは青字になっているので、クリックすればランキング表に飛べます

 

チームの成績・国内/世界ランキング

日本のチーム別ランキング

リンク:https://www.boincstats.com/stats/-1/team/list/0/0/Japan

世界のチーム別ランキング

リンク:https://www.boincstats.com/stats/-5/team/list/0/0/0

 

他のプロジェクトへの参加

せっかくなので他のプロジェクトにも参加してみます。

(PrimeGrid はタスクが尽きることが無いですが、プロジェクトによってはタスクが降ってこなくて手持ち無沙汰になることもあるので複数プロジェクト掛け持ちで計算力を余すこと無く活用できます。)

 

今回は Einstein@Home に追加で参加してみます。

重力波検出器、大型電波望遠鏡、ガンマ線望遠鏡からの観測データを用いて中性子星からの信号を探す天文学の分散コンピューティングプロジェクトです。

最近も 天の川銀河中心付近に存在する未知だった 4 個のガンマ線パルサーを発見するなど成果を上げています。
(プロジェクトの成果ニュースはこちら)

 

プロジェクトの追加方法 (例:Einstein@Home)

最初にプロジェクトを追加した時と流れは同じです。

 

BOINC Manager ソフト画面から「プロジェクトを追加」ボタンをクリックします。

BOINC:プロジェクトの追加方法

 

追加したいプロジェクトを選んでから「次へ」

BOINC:Einstein@home を追加

 

プロジェクトによっては利用規約などが表示される場合もあるので同意して次へ。

 

プロジェクトごとにアカウントは別になるので、改めて登録する。

(PrimeGrid の登録とこちらは別なので、改めてアカウントを作成する必要がある)

 

Einstein@Home の場合は一度サイトにアクセスして登録操作をしないといけないらしい。

指示通り、https://einsteinathome.org/ja/user/registration にアクセスする。

 

利用規約に同意し、ユーザー名・メールアドレスを入力。そして左下の「アカウントの作成」をクリック。

BOINC:Einstein@home のユーザーアカウント登録方法

 

メールアドレス宛に案内メールが送信されるので、メール内のリンクをクリック。

ログインを押し、パスワードを設定する。左下の「変更の保存」を押して完了。

 

あとは改めてBOINC側で Einstein@Home を接続する。

この画面で「はい、すでにアカウントがあります」の方を選んで今作成したアカウントのメールアドレスとパスワードを入力すればOK。

BOINC:Einstein@home のユーザーアカウント登録後のログイン

 

無事、プロジェクトが追加された。

 

ソフト画面で、操作対象のプロジェクトは切り替えられる。

BOINC:プロジェクトの切り替え

 

あとは待つだけ。

プロジェクトの成績はサイトから確認できる

https://einsteinathome.org/ja/account/dashboard

 

こんな感じで、気になったプロジェクトを追加して参加していけばOK。

※Einstein@Homeのタスクは予想所要時間が十数時間かかるタスクが沢山降ってきて厳しかったので中断してしまいましたが…

 

後で他の色々なプロジェクトにも参加してみたいです。

記事化前の最新情報はこちらで先にツイートしています。サイト更新告知もこちら。