SETI@homeを思い出した
かれこれ20年ほど前だろうか…。
分散ネットワーク(各PCのCPUを少しずつ利用して巨大な計算を行なう)プロジェクトがあった。調べたら今も稼働しているらしいが。
当時、ネットワークが普及し始め、各自が使用しているマシンのアイドル時間を利用して、電波望遠鏡のデータを解析して、宇宙からのメッセージ(知的生命体)を見つけようというのが始まりだった。
ボランティアベースで、自分のマシンのCPUパワーを提供してごちゃごちゃ…。
結構、ランキング(要はどれだけのブロックを計算したかの順位)が上がるのだ楽しくて、空いているマシンに次々プログラムをぶち込んだ記憶が有る。
Folding@homeとは
これも、ボランティアベースで、各自のマシンの余剰能力を提供して、役にたてようという同じ考えのもの。
今は、コロナウイルスの治療に向けた解析を行なっている。
すでに、相当数の参加があって少し前のニュースでは、1E(エクサ)FLOPSを叩き出しているらしい。
(世界のスーパーコンピュータの上位100台の合算を上回る性能といえば分かるかな?)
新型コロナ解析で分散処理プロジェクト「Folding@home」が1EFLOPS超え
さて、今回は自分のマシンも2台ほど参加させることにした。
1台はこれまでメインとして使用してきた、core-i5のubuntu。
もう1台は、現在のメインマシンのRyzen5のubuntu。
インストールは簡単で、プロジェクトサイトから自分の環境に合ったクライアントプログラムをダウンロードするだけ。
https://foldingathome.org/start-folding/
Linux版だと3つに別れている。Windows版だと1つのよう…。
- fahclient_7.5.1_amd64.deb
- fahcontrol_7.5.1-1_all.deb
- fahviewer_7.5.1_amd64.deb
実行するだけなら、最初のclientだけでOK。
インストールすると、名前やTeam番号など聞いてくるが、デフォルトのままでもOK。
一応、名前だけ登録しておいた。
実行開始すると、サイトから各自の計算ブロックをもらい、Idling Timeを利用して計算を行なう。完了したら結果を送って、次のブロックを入手して…を繰り返すだけだ。
特に、何もすることはない。
動かしてみると
サービスとして稼働していて、ググっとCPUを計算に回し始めた。
なんと、100%近くまで処理が上がりぶん回してくれる。
core-i5は2コア2スレッドの仮想4コアすべてが100%をキープ。
Ryzen5は6コア2スレッドで仮想12コアが100%に。
どうやらGPUも回している様子。
でもって、本体のFanがゴーゴー言い出した。
その分計算はたしかに早い。
1%計算するのに、だいだい40秒程度で完了している。
$ tail -f /var/lib/fahclient/log.txt
で確認していると、進み具合がよく分かる。
ただ、このまま動かし続けると、電力も相当消費するし、Fanが持たなくなりそう…
ということで、もう少し性能を下げることにする。
このプログラムはサービスで稼働しているので、以下のコマンドでCPUクォータを設定する。
$ sudo systemctl edit FAHClient.service
を使用して、/etc/systemd/system/FAHClient.service.d/override.conf を作成する。
と設定した。これは12コアの場合、0〜1200%まで設定できる(最初これを0〜100%と思っていたので挙動が自分の思った通りにならず???ってなってたw)
この場合、全体のおよそ1/3程度のCPU能力を割り振ることになる。
どちらも、約33%程度を示している。
設定通りというわけだ。
この状態でログを見ると、1%処理するのに、約2分40秒(160秒)かかっている。
Ryzen5でこの程度。
core-i5は、CPUQuota=100%で設定している。
こちらは、やはり遅くて、1%処理するのに4分10秒(250秒)かかっている。
CPUQuota=133%にしたら、さすがに少し早くなった。(当たり前)
およそ、3分10秒程度(190秒)なので、まあ計算通りという感じ。
この程度だと、Fanはほぼ無音で静かに処理してくれるので、動いているのが気にならないレベル。
もちろん、負荷も1/3程度なので、普通の処理では気が付かない範疇。
ぜひ気楽に参加してみませう!
これで、ウイルスの治療法が少しでも早く見つかるのなら、いいんじゃないかな?と思っている。
すでに、かなりの成果が出始めているらしいので、自宅でWEBみたりYoutubeしたりしている裏で少しずつ貢献するのもありだな。
コメント
コメントを投稿
励みになりますので、簡単で良いので一言くださいませ。