RaspberryPi4を使いBOINCへボランティア参加

RaspberryPi4環境 RaspberryPi
USK
USK

余っている時間に自分のコンピュータの力を解析のために提供

Sponsored Links

病気の解明に貢献した Folding@home

新型コロナウィルスについて、TVやインターネットなどでニュースが流れています。科学的なことでは遺伝子解析やらなんやらと出ています。スパコンとか使って解析しているのかなって思いつつも、ふと思い出したのが「 Life with PlayStation®」。 Folding@home という分散コンピューティングプロジェクトをPS3でつかえるようにしたソフトです。

主に、医学系の解析をメインにしていた記憶があります。アルツハイマー病や新薬の研究など。

そもそも分散コンピューティングとは

プログラムの個々の部分が同時並行的に複数のコンピュータ上で実行され、各々がネットワークを介して互いに通信を行いながら全体として処理が進行する計算手法

Wikipedia:分散コンピューティング

PS3は、処理能力が素晴らしいということで、世界中のPS3をつなげて解析しようとしました。その結果、1年かかる解析が数週間で終わったりと、かなりの成果を上げたようです。私も、ゲームをし終わったあと1時間 Life with PlayStation® に参加していたりしました。

そんなことを思い出し、そういえばRaspberryPi4でも分散コンピューティングできるよねと思い、 Folding@home をインストールしようと調べてみたところ、Raspbianに対応していないようです。ただし、WindowsやMacや他のLinuxなどは対応。

RaspberryPi4 (Raspbian)でも動くBOINC

そこで、Raspbianでできるものはないかと調べていたら、どうやらBOINIC(Berkeley Open Infrastructure for Network Computing)というのを発見。分散コンピューティングを行うプラットフォームのようなもので、これをベースに解析プログラムを開発すればBOINCをインストールしているユーザー自身が参加したいプロジェクトに容易に参加できます。プロジェクトは、宇宙や数学、医学などさまざまな分野があります。

ただ、BOINCのプロエジェクトの中にもRaspberryPi4では動かないものもあるようです。

ちなみに、日本支部的なところもありました。

さっそくRaspberryPi4にインストール

インストール

RaspberryPi4というかRaspbianにBOINCをインストールというべきかもしれませんが・・・。
インストールするために参考にしたのがこちらのブログです。

全部、英文ですがlinuxのコマンドを打つだけです。手元にあるRaspberryPi4では、以下のコマンドのみで無事にインストールできました。

sudo apt-get update
sudo apt-get upgrade
sudo apt-get install boinc

Linuxに関しては、ド素人なのですが、毎回、「update」「upgrade」は必要なのだろうか・・・。

インストールが無事に完了すれば、あとはメニューからBOINCを起動させるだけです。

プロジェクトへ参加方法

BOINCを起動するとこのような画面が出てきます。実は、日本語に対応しています。
自分で参加したいプロジェクトを選択して、「次へ」をクリックします。今回選んだのは、なんとなく「Asteroids@home」というプロジェクト。宇宙関連の分析です。

BOINC@分散コンピューティング

次へを押したら、利用規約が出てきます。日本語表記だと、利用規約に従うかの「はい」「いいえ」のレイアウトが崩れてよくわからない・・・。なので、Tabキーからラジオボタンにチェックを入れて「次へ」ボタンが有効になるかどうかを確認するしか・・・。英語表記に修正すればいいだけなのですが・・・・

BOINC@分散コンピューティング

「次へ」をクリックすると、そのプロジェクトのアカウントを作成する必要があります。

BOINC@分散コンピューティング

アカウント情報を入れたら、「次へ」と進みます。が、もう、レイアウトがくずれ、よくわからん。どうやら、参加プロジェクトのサイトに飛ぶ?ってような感じなので、何もいじらずに「終了」ボタンを押します。

BOINC@分散コンピューティング

と、思ったら参加するタスクがなかった・・・・。

さて、これでBOINCでの解析が始まると思ったら・・・こんな画面が・・・。

BOINC@分散コンピューティング

う~ん。ここで、ふと疑問。そもそも活発なプロジェクトは何なんだと。そこで、BOINCの公式HPを覗いたところ、Top 100 multi-project BOINC participantsという参加メンバーのTOP100が利用しているプロジェクトのグラフが出ていました。

このページに出ているプロジェクトであれば何かお仕事があるのではないかということで、Einstein@homeというプロジェクトに参加することにしました。

Einstein@homeは、公式HPでアカウント作成が必要

Einstein@homeは、かのアインシュタインさんの研究由来のプロジェクト。よし、さっきと同じようにBOINCの設定をしようと、アカウント作成を完了させようとしたところ、うまく行かない。何やら公式HPで直接アカウントを作成する必要があるようで、せこせこと作成しました。
そして、無事に設定が済むと、お仕事が始まります。

BOINC@分散コンピューティング

あとは、放置しておけば、RaspberryPi4さんがCPU100%で演算を開始します。

気になること

実際につかって見ると、何も難しいことはないです。プロジェクトを選んで、登録するだけです。ただ、使ってみていくつか気になることが

どんなプロジェクトがある?

BONICの画面で、プロジェクトを選択すると概要が書かれているのですが、英語・・・。そこで、プロジェクトの一覧が書かれているページがありました。Google翻訳とWikipediaを駆使すればあらかたどんなプロジェクトかがわかります。

BOINCが動いている間は、作業はできる?

実際に、BOINCによる演算が始まると、RaspberryPi4はCPU100%になりますが、何か作業をしようとすると、演算が一時停止となり、CPU使用率が一気に下がります。そして、作業を止めると演算が再開されます。

タスクが終了したらRaspberryPi4の電源を自動で落とせる?

Life with PlayStation® では、タスクが終了または、一定時間演算すると電源が切れるように設定できましたが、本ソフトはできないのかな・・・。

ただ、BONICのソースコードが公開されているので、プログラムができれば、自在に設定を変えることが可能だと思います。

RaspberryPi4のCPU温度(CPU tmp)はどこまで上がる?

CPU100%で演算をするので、CPU温度(CPU tmp)が気になります。使用しているRaspberryPi4には、写真のようなCPUファンを取り付けています。

RaspberryPi4向けCPU冷却ファン

5Vの電源につなげてCPU温度(CPU temp)を観察していたら

BOINC非稼働:36℃前後
BOINC稼働:50℃前後

のような結果でした。それなりにファンの効果があるようです。
今のRaspberryPi4の環境については、こちらの記事を御覧ください

RaspberryPi4の仕様でどこまで貢献することができるかわかりませんが、これから少しずつ協力していきたいと思います。ただ、CPU100%なので、どこまで耐えるか気になる・・・。

コメント

タイトルとURLをコピーしました