新型コロナウイルス COVID-19 が猛威を振るい、外出が厳しい状況にあります。新しい三脚を入手したので風景写真を取りに行きたいところですがいつになるのかわかりません。
パンデミックの終息を早めるために家にいることが今できる事の一つだと思いますが、その他にできることはないだろうか?と調べているとこんな記事を発見しました。
新型コロナウイルスの解析にPCやスマホのコンピューターリソースを活用するという内容です。
なるほど、そういった部分でパンデミック終息に貢献できるそうです。更に貢献できそうなコンピューターリソースは無いかと周囲を見渡してみるとNASがあることに気づきました。
QNAPのTS-453BeというNASを使用していますが、これはDockerを使えます。ここに[email protected]や[email protected]の環境を作ることができればもっと貢献できそうです。
調べてみると既にそれら向けのDockerイメージが作成されていました。今回は非力なリソースでも貢献できそうなQNAPのTS-453Be上で[email protected]の環境を構築してみたいと思います。
[email protected]環境の構築
[email protected]と[email protected]のDocker設定についてはリンク先に詳しく書いてあります。こちらを元に[email protected]環境を作成してみます。
QNAP上でのDockerの操作などについては以前にWordPress環境を構築したときと同様に、docker-composeの設定をまるっとコピーして使用するのが手っ取り早いです。ということで、Docker-hubの設定を元にした下記のdocker-composeの設定を使うこととしました。
boinc: image: linuxserver/boinc container_name: boinc environment: - PUID=1000 - PGID=1000 - TZ=Asia/Tokyo # オリジナルよりタイムゾーンを変えてみました。変えなくても影響ないかもしれません。 volumes: - /path/to/data:/config #optional ports: - 8089:8080 #ポート番号は他と重複しないように変更 devices: - /dev/dri:/dev/dri #optional restart: unless-stopped
volumesの設定はなくても大丈夫だと思います。タイムゾーンは日本に合わせましたがオリジナルのEurope/Londonでも問題ないかもしれません。portsはご自身の環境に合わせて変更してください。
コンテナの構築が終わるとこのような感じになります。[email protected]に追加前なのでCPU使用率は低いです。

[email protected]に参加する
[email protected]に参加するにはリンクボタンをクリックしてクライアント画面を開きます。
クライアント画面から参加するプロジェクトを選びます。[email protected]を選択してNextをクリック。

メールアドレスとパスワードを設定します。捨てアドでもいいと思います。パスワードは6文字以上です。


参加後は、このような画面になり準備中になります。
この状態だとプログレスがわからないのでView->Advanced Viewに変更をおすすめいたします。

View->Advanced ViewでTransfersを見ると準備段階としていくつかのファイルをダウンロードしている様子がわかります。混み合っているのか180kbpsほどしか速度が出ず、実際のタスク実行まで約3時間ほどかかりました。


CPU使用率を調整する
ダウンロードが終わって実際にタスクが実行されるとTS-453BeのCPU使用率が100%になってしまいました。
ファンが勢いよく回り、このまま放置しておくと危険なので設定変更して調整が必要です。まだタスク実行前であれば、ダウンロード中の空き時間に設定しておけば安心かもしれません。
設定変更はOption->Computing preferencesより行います。


デフォルトでは100%割り当てられております。”Use at most of the CPUs”, “Use at most of the CPU time”の2つのパラメータがあります。
“Use at most of the CPUs”はCPUコアをどの位の割合で使うか、の設定です。同時実行タスク数に影響するようで、例えば4つタスクがある場合、75%に設定すると3つ同時実行までに制限されました。お使いのNASによって動作は変わると思います。
“Use at most of the CPU time”はその名の通り、実行時間の調整になります。50%に設定するとBOINCアプリケーションのCPU使用率も約半分になります。
私の環境では、”Use at most 75% of the CPUs”, “Use at most 50% of the CPU time”に設定してみました。
設定変更前後のCPU使用率です。タスクの実行終了まで20時間はかかりそうです。



あとは、放置しておくと自動的に新規タスクを取り込んで実行していくようです。少しでも役に立てるといいのですが。
アカウントの編集、チームの参加など
メールアドレスやパスワードの変更、チームの参加などはWeb上から行うことができます。[email protected]のホームページからログインすると変更可能です。日本語化されているのでBOINCクライアントの画面よりこちらのほうがわかりやすいと思います。これらの作業は必須ではないのでお好みで。
番外:QNAP CLUBのBOINCパッケージ
あまり詳しくないのですがQNAP CLUBという非公式なレポジトリがありQNAP向けアプリをインストールできるようなのですが、そこにBOINCアプリがあります。
試しにインストールしてみたのですがどのように使えばよいのかわからず。QNAPユーザはもしかしたらそちらのほうがリソース使用効率が良いのかもしれません。なにかわかったら追記するかもしれません。