概要
win10とlinuxの両方から、TurboBoostを無効にする方法。
背景
win10とlinux_mintのデュアルブートPCを作りたくて、もともとwin8がプリインストールされていたパソコンを格安で入手した。起動すると、ファンがフル回転で、うるさすぎる。
CPUのグリスを塗り直したり、ファンの清掃をしてみたものの、起動と同時にファンがフル回転する。
調べてみると、このパソコンは、OSがCPUの温度をモニターし、CPUが70度を超えないように、ファンが回るようだ。ファンの回転数を下げるのは危険すぎる。
さらに調べてみると、このパソコンで使われているCPUには、TurboBoostという機能があり、デフォルトで有効になってるらしい。(800MHz-2.30GHz、TurboBoost 3.40GHz)
TurboBoostは、クロック数を引き上げることで、CPUの性能を高める機能で、いわば、日常的にオーバークロックするような機能である。これでは、ファンがフル回転のはずである。
そこで、TurboBoostの無効を試みる。
TurboBoostの有効/無効の切り替えは、パソコンによっては、BIOSで設定できる。しかし、このパソコンのBIOSには、そのような項目がない。そのような場合は、OSで設定するようだ。今回は、dualbootなので、win10とlinuxの両方から設定する必要がある。
win10からTurboBoostを無効にする
「電源プランの編集」>「詳細な電源設定の変更」>「プロセッサの電源管理」に入る。
しかし、TurboBoostの有効/無効を設定できるはずの「プロセッサ パフォーマンスの向上モード」がない。
そこで、レジストリエディタ(regedit.exe)を起動する。
レジストリエディタのアドレスバーに以下を入力する。 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Power\PowerSettings\54533251-82be-4824-96c1-47b60b740d00\be337238-0d82-4146-a960-4f3749d470c7
Attributes
を 2
にする。
レジストリへの設定が完了すると、以下のように「プロセッサ パフォーマンスの向上モード」が追加されるので、「無効」にする。
結果、win10を起動しても、静かになった。
しかし、linuxを起動すると、当たり前だが、ファンはフル回転である。
linuxからTurboBoostを無効にする
$ apt install cpufrequtils // toolをinstall
$ cpufreq-info // cpu情報を取得、800MHz-3.40GHzだとわかる。
hardware limits: 800 MHz - 3.40 GHz
current policy: frequency should be within 800 MHz and 3.40 GHz.
$ nano /etc/default/cpufrequtils // 設定ファイルを作成、中身は下記のとおり。
ENABLE="true"
GOVERNOR="powersave"
MAX_SPEED=2.30GHz
MIN_SPEED=800MHz
$ sudo systemctl restart cpufrequtils // サービスを再起動
$ cpufreq-info // cpu情報を取得、800MHz-2.30Mhzに制限されているのがわかる。
hardware limits: 800 MHz - 3.30 GHz
current policy: frequency should be within 800 MHz and 2.30 GHz.
結果、linuxを起動しても、ファンは静かになった。