ethos agent tools: Add NightShift mode. it can reduce fan noise.
ethos-agent は ethOS を強化するツールです。
今日は、ethos-agent に夜間の騒音を低減する、NightShiftモードというものを追加しました。
NightShift を有効にすると、20:00〜05:00 の間は自動的にFanの回転数を一時的に下げ、静音化が可能になります。朝になると local.conf で設定している値に自動的に復帰します。
rigと同じ部屋で生活している人にとっては朗報でしょう。ほとんどrigの存在を気にせずに済むようになるはずです。
開発ログ
一枚目はデフォルト状態の騒音レベル(GPU4枚)
— コラーゲンたっぷりさん (@uupaa) 2018年3月27日
二枚目は昨日の時点の騒音レベル(GPU15枚、細かくチューニング済み)
三枚目は電源OFF状態(比較用)
マイニングリグは熱と音の問題があるのですが、やりようによってはクールで静かにやれる事がわかりました。枕元に置けるレベルです pic.twitter.com/hdBl7Q2kFf
/etc/rc.local の中で nvidia-setting を実行しようとするとディスプレイが割り当てられていないためコケる
— コラーゲンたっぷりさん (@uupaa) 2018年3月27日
su -l USER -s /bin/bash -c ‘実行したいコマンド’
でユーザを割り当てることで回避できる。睡眠時間は犠牲になったのだ…
rc.local の中でうっかりコケると、stdout, stderr がどこにも出ない + ひどいとOSが起動しなくなる(シングルユーザモードでrc.local編集が必要になる)ので、時間が溶ける
— コラーゲンたっぷりさん (@uupaa) 2018年3月27日
ドハマリして2時間しか寝れなかったので、日中どこかで仮眠しませんと…
— コラーゲンたっぷりさん (@uupaa) 2018年3月27日
/etc/rc.local に設定するコマンドを以下のように、su -l -s -c ...
と工夫することで、root ユーザでも、
/usr/bin/sudo /usr/bin/nvidia-settings -a [gpu:0]/GPUFanControlState=1 -a [fan:${index}]/GPUTargetFanSpeed="40"
が実行可能になりました。
単純に /usr/bin/node --experimental-modules /home/ethos/ethos-agent/index.mjs
だけだと、error: XDG_RUNTIME_DIR not set in the environment
でコケてしまいます。
su -l ethos -s /bin/bash -c '/usr/bin/node --experimental-modules /home/ethos/ethos-agent/index.mjs