アイドル状態でFolding@Homeを実行するには?

アイドル状態でFolding@Homeを実行するには?

Folding@Homeをインストールして設定しました。

$ lsb_release --all
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 19.10
Release:    19.10
Codename:   eoan
$ FAHClient --version
7.5.1
$ cat /etc/fahclient/config.xml 
<config>
  <!-- Network -->
  <proxy v=':8080'/>

  <!-- Slot Control -->
  <idle v='true'/>
  <power v='FULL'/>

  <!-- User Information -->
  <team v='[omitted]'/>
  <user v='[omitted]'/>

  <!-- Folding Slots -->
  <slot id='0' type='CPU'/>
  <slot id='1' type='GPU'/>
</config>

ただし、サービスを開始した後、処理は開始されません。切り替えると顧客idle設定すぐに処理が始まりましたが、設定を途中まで下げてもpower他の作業はほとんど不可能でした。Folding@Home このマシンがアイドル状態のときにのみ動作するようにするにはどうすればよいですか?つまり、人の介入なしに数分間アイドル時間が経過したら、処理を開始し、アイドル状態にならなくなったらすぐに処理を停止する必要があります。

ベストアンサー1

私も同じ問題があります。クライアントは、私のコンピュータがアイドル状態だとは思わない。結局、画面がロックされている場合にのみFAHを復元するスクリプトを作成しました。効果はとても良いです。ここで見ることができます:

https://github.com/Madoshakalaka/gnome-folding-at-screenlock

リポジトリがダウンしたときにリポジトリが正常に動作するようにするための全体的な手順は次のとおりです。

  1. このサービスファイルを次の場所にコピーします。/home/YOUR_DESTOP_USER/.config/systemd/user/gnome-folding-at-screenlock.service
[Unit]
Description=FAH controller based on screen locking/unlocking signals

[Service]
ExecStart=/usr/bin/gnome-folding-at-screenlock.sh

[Install]
WantedBy=default.target
  1. このシェルスクリプトをあなたのスクリプトにコピーし、/usr/bin/gnome-folding-at-screenlock.sh実行権限を与えますsudo chmod +x /usr/bin/gnome-folding-at-screenlock.sh
#!/usr/bin/env sh

dbus-monitor --session "type='signal',interface='org.gnome.ScreenSaver'" |
# Somehow I receive duplicate signals during locking and unlocking.
# It's a weird behavior but does no harm in our case.
  while read x; do
    case "$x" in
    "boolean true")
      echo "screen turns locked. Initiate folding" && FAHClient --send-unpause ;;
    "boolean false") echo "screen turns unlocked. Unfold! Unfold!" && FAHClient --send-pause ;;
    *) ;;
    esac
  done
  1. sudo systemctl enable foldingathome && sudo systemctl start foldingathomeまだそうしなかったら。スクリプトはfoldingathomeサービスを開始または停止しません。サービスが開始され、一時停止/一時停止解除によって縮小されたとしますFAHClient。一時停止または一時停止解除は、現在のプロファイルに残ります/etc/foldingathome/config.xml
  2. ブラウザのダッシュボードに移動していくつかのhttp://localhost:7396/オプションを変更してください。もはやFAHのアイドル検出に依存しないので、「作業中」オプションを選択する必要があります。また、理想的な電力レベルを設定できます。最後に、「折りたたみを停止」ボタンをクリックして折りたたみを停止します。これにより、実際に<paused v='true'>プロファイルにラベルが追加されます(ディスプレイを起動したときにスクリプトが実行する操作とまったく同じです)。
  3. systemctl --user enable gnome-folding-at-screenlock.service。ロックとロック解除はデスクトップユーザーに接続されているため、rootとして実行したり、sudoを使用したりしないでください。
  4. systemctl --user start gnome-folding-at-screenlock.service。 rootとして実行したり、sudoを使用しないでください。
  5. 完璧!今、あなたのコンピュータの場所を空にするたびにsuper+を押して画面をロックします。lたんぱく質がすぐに折り始めます!戻ってコンピュータのロックを解除すると、折りたたみはすぐに一時停止します!
  6. ボーナスポイントを獲得するには、GNOMEに移動してSettings > Power自動一時停止をオフにします。それ以外の場合、拡張縮小は機能しません。デフォルトでは、20分間アクティビティがないと一時停止し、FAHも停止します。

おすすめ記事