最近の定期的なアップグレードの後、CPU周波数を手動で変更できないことに気付きました。システムはそれを自動的に実行し、可能な限り最高の周波数を選択します。これにより、システムは高温になります(すでに加熱の問題があります)。
私が見つけた修正のほとんどは2010年以前のスレッド上にあり、適用できなくなりました。
cpufreq-info
の出力は次のとおりです。
cpufrequtils 008: cpufreq-info (C) Dominik Brodowski 2004-2009
Report errors and bugs to [email protected], please.
analyzing CPU 0:
driver: acpi-cpufreq
CPUs which run at the same hardware frequency: 0
CPUs which need to have their frequency coordinated by software: 0
maximum transition latency: 10.0 us.
hardware limits: 800 MHz - 1.80 GHz
available frequency steps: 1.80 GHz, 1.80 GHz, 1.20 GHz, 800 MHz
available cpufreq governors: conservative, ondemand, userspace, powersave, performance
current policy: frequency should be within 1.80 GHz and 1.80 GHz.
The governor "ondemand" may decide which speed to use
within this range.
current CPU frequency is 1.80 GHz.
cpufreq stats: 1.80 GHz:77.10%, 1.80 GHz:0.01%, 1.20 GHz:22.86%, 800 MHz:0.02% (74)
analyzing CPU 1:
driver: acpi-cpufreq
CPUs which run at the same hardware frequency: 1
CPUs which need to have their frequency coordinated by software: 1
maximum transition latency: 10.0 us.
hardware limits: 800 MHz - 1.80 GHz
available frequency steps: 1.80 GHz, 1.80 GHz, 1.20 GHz, 800 MHz
available cpufreq governors: conservative, ondemand, userspace, powersave, performance
current policy: frequency should be within 1.80 GHz and 1.80 GHz.
The governor "ondemand" may decide which speed to use
within this range.
current CPU frequency is 1.80 GHz.
cpufreq stats: 1.80 GHz:77.09%, 1.80 GHz:0.02%, 1.20 GHz:22.88%, 800 MHz:0.02% (73)
cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq
の出力:
1801000
問題はcpufreqd
でしたが、Ubuntu MATE Desktopをインストールしたときに問題が発生しました。それを取り除くとシステムに制御が戻り、システムを不必要に過熱することなく使用できるようになりました。
Scaling_min_freqが低い周波数に設定されていないようで、ガバナーがこれらの周波数にアクセスできないようにします。これを操作できるかどうかを確認するために、ターミナルで次のコマンドを入力します。
Sudo -i
for x in /sys/devices/system/cpu/cpu[0-1]/cpufreq; do echo 800000 > $x/scaling_min_freq; done
exit
これで目的の結果が得られる場合は、スクリプト内のループを/etc/rc.localに配置できます。そうでない場合は、システムを再起動して、既知の動作可能な状態に戻します。私のシステムでは、ループの前に実行するecho 1 > /sys/module/processor/parameters/ignore_ppc
行も追加する必要がありました。