freebsd:freebsd_12_install_foldingathome

差分

このページの2つのバージョン間の差分を表示します。

この比較画面にリンクする

両方とも前のリビジョン 前のリビジョン
freebsd:freebsd_12_install_foldingathome [2020-03-29 01:29]
Decomo
freebsd:freebsd_12_install_foldingathome [2020-03-29 11:25]
Decomo
行 1: 行 1:
 ====== FreeBSD 12とFolding@homeで新型コロナウイルス解析に参戦する ====== ====== FreeBSD 12とFolding@homeで新型コロナウイルス解析に参戦する ======
  
-流行りに乗じて新型コロナと絡めてみたけど、単にFreeBSD 12でFolding@homeを動かそうっていうお話で+流行りに乗じて新型コロナと絡めてみたけど、単にFreeBSD 12でFolding@homeを動かそうっていうお話。 
 + 
 +以前にもやったことあったなぁ…とサイト内をあさってみたら、ちょうど14年前だった([[blog:2006:2006-03-27]])。VIA C3のマシン運用してた記憶。当時はまだportsがなかったけど、記事書いたのが3月、portsが出来たのが8月のようで、振り返ってみるとちょっとの差だったんだなと中々に感慨深い。 
 + 
 +しかしあれから14年か…
  
 ===== 試した環境 ===== ===== 試した環境 =====
行 26: 行 30:
 </code> </code>
  
-fahclientユーザーが使えない状態だとサービス起動時に「su: unknown login: fahclient」と怒られて起動できなかったりする。+fahclientユーザーが使えない状態では、「su: unknown login: fahclient」と怒られてサービスとして起動できなかったりする。
  
 ===== Linuxエミュレータの設定 ===== ===== Linuxエミュレータの設定 =====
行 44: 行 48:
 ここで再起動するか、自前でカーネルモジュールを読み込む&上記FS類をマウントする。 ここで再起動するか、自前でカーネルモジュールを読み込む&上記FS類をマウントする。
 <code> <code>
 +# reboot
 +または
 # kldload linux64 # kldload linux64
 # mount /compat/linux/proc # mount /compat/linux/proc
行 61: 行 67:
 # zfs create -o exec=on zroot/ROOT/var/db/fahclient # zfs create -o exec=on zroot/ROOT/var/db/fahclient
 # chown -R fahclient:fahclient # chown -R fahclient:fahclient
 +</code>
 +
 +fahclientの実行ログを見るかぎり、''/usr/local/etc/fahclient/''以下の所有者も変えた方が良さそう。
 +<code>
 +# chown -R fahclient:fahclient /usr/local/etc/fahclient/*
 </code> </code>
  
行 78: 行 89:
 # service fahclient start # service fahclient start
 </code> </code>
 +
 +''service fahclient log''でズラズラとログが出たり、topでFAHClient/FahCore_xxあたりのプロセスが動いてれば解析が行われている。
  
 ===== トラブルシューティング ===== ===== トラブルシューティング =====
  
-動で起動する場合+==== アプリケーション起動 ==== 
 + 
 +デーモンはなく単発アプリケーションとして起動したい場合は、以下のようにする。
 <code> <code>
 # /usr/local/bin/FAHClient --config=/usr/local/etc/fahclient/config.xml # /usr/local/bin/FAHClient --config=/usr/local/etc/fahclient/config.xml
 </code> </code>
 +
 +==== CPU割り当ての最適化 ====
 +
 +Foldgin@homeはFolding slot単位でWUの割り当てを行うが、標準では1スロットに全CPUスレッドを割り当てる構成となっている。そしてスロットの処理能力に適したWUが割り当てられるっぽいが、多コアCPUの場合これが徒となり、WUが降ってこない原因ともなるようだ。
 +
 +そんな時は、あえて4スレッド程度のスロットを複数個作った方が、効果的にWUの割り当てが行われるっぽい。
 +<code>
 +<config>
 +  ...
 +  <!-- Folding Slots -->
 +  <!-- 8C/16TのCPUで4スレッド×4スロットにする -->
 +  <slot id='0' type='CPU'>
 +    <cpus v='4'/>
 +  </slot>
 +  <slot id='1' type='CPU'>
 +    <cpus v='4'/>
 +  </slot>
 +  <slot id='2' type='CPU'>
 +    <cpus v='4'/>
 +  </slot>
 +  <slot id='3' type='CPU'>
 +    <cpus v='4'/>
 +  </slot>
 +</config>
 +</code>
 +
 +===== 参考サイト =====
 +
 +  * [[https://foldingathome.org/|olding@home – Fighting disease with a world wide distributed super computer.]]
  
  • freebsd/freebsd_12_install_foldingathome.txt
  • 最終更新: 2020-03-29 11:25
  • by Decomo