2024-02-04

【LMDE】amdgpu で GPU ファンの回転速度を調整

「艦これ」プレイ中にたまに発生するカクカクを解消するために Radeon RX 6600 を導入したのですが、iGPU とだいぶ動きが違っているのでビックリしました。

Ryzen 5 5600G の iGPU はすごく楽チンなんだなぁ、というのが正直なところです。

GPU のファンが回らない?

Radeon 6600 を取り付けたばかりの時は「だいぶ静かで iGPU と変わらないなぁ」と思っていたのですが、GPU の温度がだいぶ上がってもファンの音が静かなままだったのです。

ちょっと amdgpu のパフォーマンスの調整をしていた時に GPU 温度がみるみる上昇していったのですが、50 度が近くなっても GPU ファンは静かなままなのです。「もしや、これは GPU ファンが壊れているのでは?」 と思いました。某オークションで安く入手した中古品だったので突然に心配になりました。

この製品の情報を調べてみたところ、どうやらこれはセミファンレス仕様という仕様通りの動作をしているようでした。なんでも 60 度にならないと GPU のファンは回転しないそうです。

どおりで GPU へ負荷をかけるのをやめたあと、温度が下がるのにだいぶ時間がかかった訳です。あれは確かにファンが全く回っていないような非常にゆっくりとした温度の下がり方でした。

 

GPU ファンを回したい

既定の温度に達していなくても、ある程度ゆっくりとでも GPU のファンを回しておきたい派です。 

ということで、任意に GPU ファンを回転させる方法を調べてみると見つかりました。

sudo sh -c "echo 1 > /sys/class/drm/card0/device/hwmon/hwmon1/pwm1_enable"
sudo sh -c "echo 60 > /sys/class/drm/card0/device/hwmon/hwmon1/pwm1"

sysfs の操作で pwm1_enable に 1 を書き込むと手動モード、2 を書き込むと自動モードだそうです。

手動モードに変更してから pwm1 に回転率を計算した値を書き込みます。GPU ファンの回転率を 20% に設定したい時は 20 x 2.55 = 51 を書き込みます。40% にしたい時は 102 になります。

使用しているビデオカードによると思うのですが、このカードの場合は 40% にするとかなりファンの音が気になるくらいでした。冷却能力は十分ですが。

ちなみに GPU ファンの回転数は sensors コマンドや rocm-smi コマンドで確認できます。ワタシはなぜか過去に rocm-smi コマンドをインストールしていたので、そちらで確認しています。

======================= ROCm System Management Interface =======================
================================= Concise Info =================================
GPU  Temp   AvgPwr  SCLK    MCLK   Fan     Perf  PwrCap  VRAM%  GPU%  
0    32.0c  5.0W    800Mhz  96Mhz  23.14%  auto  100.0W    8%   12%   
================================================================================
============================= End of ROCm SMI Log ==============================


しばらく使ってみた

PC を起動した直後は 20% くらいでファンを回していました。普通に Firefox でウェブサイトを見てるくらいだったら全然問題ありません。

「艦これ」をカクカクなくプレイするために GPU をちょっと回す時は 30% 以上に設定していました。

そして、PC をサスペンドさせて復帰させてみると「おや?ファンの回転数がゼロですな」 ということに気づいたのです。どうやらこれも仕様らしく、ベテランな人は systemd に復帰した時のスクリプトを登録しているみたいです。

困ったことに pwm1_enable = 1 から始めなければならず、今のところワタシはスクリプトを作って引数で外から回転率を指定できるようにしています。

 

 

こんな感じだったので、CPU 温度に連動してファンの回転数が変動する iGPU は非常に楽チンだったんだな、と思った次第です。iGPU の暮らしにだいぶ戻りたい気持ちでいっぱいです。