Jetson Nano とファン
Jetson Nano 2GB でいろいろ使っていると温度が高いと感じる事があったのでヒートシンクとファンを交換してみました。
ざっくりまとめると
Jetson Nano(2GB)
Jetson Nano はGPU性能を必要とする目的に沿うよう設計されているデバイスですが、現在のコンピューターは発熱を避ける事が出来ないため、Jetsonもフル能力を発揮するためには冷却が必要になります。実際しばらく負荷を掛けた状態にするとヒートシンクが触れない程の温度になります。
ファンが無くとも元々大きめのヒートシンクがつけられた状態で販売されていますので、ある程度までは問題無く利用することが出来ます。しかし、カメラ等から物体認識などでGPUに長時間負荷を掛け続ける場合は必須と言ってもかまいません。
Jetson Nano は基板上に ファンを回すためのPWM制御可能な4ピンソケットがついています。つまりわざわざ用意している程にファンの必要性は高いプロダクトになります。
通常のコンピューター用ファンは 12v ですがJetsonのファン用電源は 5v出力です。
このソケットではPWMによってファンの回転速度を制御することが可能です。
ハードウェア
以下のヒートシンクとファンを利用しました。効果はどちらかというとヒートシンクの交換が高いように感じました。
ヒートシンクはなんとなく熱かったので他のものを試してみたく購入しましたが、なかなかナイスです。しかし残念ながら付属ファンは光るだけで効率が悪い気がします。とはいえ、ファンがついているとついてないでは劇的に差がありますのでファンはつけておいたほうがよいです。
しかし、5v PWM制御可能なファンとなるとかなり限られる・・・
ソフトウェア
非常に便利なソフトウェアがMarc Ueckerさんにより開発、公開されていますので利用します。
まずはターミナルを起動し、このプロジェクトをクローンします。
git clone https://github.com/Pyrestone/jetson-fan-ctl
では次はインストールコマンドを実行します。
cd jetson-fan-ctl
./install.sh
インストールが完了すると以下のようなメッセージが表示されます。
settling to /usr/local/bin/automagic-fan/...
done
adding service to /lib/systemd/system/...
done
creating config at /etc/automagic-fan/
done
starting and enabling service...
Created symlink /etc/systemd/system/multi-user.target.wants/automagic-fan.service → /lib/systemd/system/automagic-fan.service.
done
automagic-fan installed sucessfully!
To configure, edit /etc/automagic-fan/config.json (needs sudo)
温度設定
設定ファイルが/etc/automagic-fan/config.jsonに保存されているので、編集を行います。
この設定ファイルは管理者権限が必要となるため、例えば vim で編集をする際は、以下のコマンドにて編集を行います。
sudo vim /etc/automagic-fan/config.json
各項目の設定
FAN_OFF_TEMP
設定された温度以下になった場合ファンが停止します。
FAN_MAX_TEMP
設定された温度以上になった場合、ファンが100%のスピードで回ります。
UPDATE_INTERVAL
ファンのスピードを更新する周期を秒単位で設定します。
MAX_PERF
0より大きな値を設定するとシステムを最大限高速で動作するようになります。
温度は小数点以下の値(20.125のように)設定することも出来ますが、内部の温度センサーは0.5度単位でしか計測できません。
ファン制御を再起動
設定ファイルを編集した場合、システムを再起動するか以下のコマンドにより設定を適用します。
再起動するまでは、起動時の設定が保持されます。
sudo service automagic-fan restart