web-dev-qa-db-ja.com

「powersave」ガバナーでもCPU周波数が高すぎる

最近、ほとんど負荷がかかっていなくても、CPUがほとんどの場合高周波で座っていることに気付きました。

これは、800 MHz〜2.5 GHz(Turbo Boostで3.5 GHz)の周波数を使用するi5-7300HQプロセッサです。

現在、負荷が約2〜8%の場合でも、私が見る周波数は通常2.6〜3.2 GHzであり、これはCPUがほぼ常にターボブーストであることを意味します。

以前は常に900〜1200 MHzでした。

スケーリングガバナーは省電力に設定されます。

$ cat /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor
powersave
powersave
powersave
powersave

/etc/default/grubには次の行があります。

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash intel_pstate=disable scsi_mod.scan=sync"

/etc/default/cpufrequtils ::

GOVERNOR="powersave"

/sys/devices/system/cpu/intel_pstate/ dirはありません

私のシステム仕様は次のとおりです。

  • ラップトップ:HP Pavilion-15-bc203nw
  • OS:Ubuntu(Xubuntu)18.04.1 LTS
  • CPU:Intel Core i5-7300HQ

編集

@ WinEunuuchs2Unixの提案の後、私は再び/sys/devices/system/cpu/intel_pstate/ dirを取得しました。

次を入力します。

cd /sys/devices/system/cpu/cpu0/cpufreq && paste <(ls *) <(cat *)

出力を与えます:

affected_cpus                             0
cpuinfo_max_freq                          3500000
cpuinfo_min_freq                          800000
cpuinfo_transition_latency                0
energy_performance_available_preferences  default performance balance_performance balance_power power
energy_performance_preference             balance_performance
related_cpus                              0
scaling_available_governors               performance powersave
scaling_cur_freq                          3236541
scaling_driver                            intel_pstate
scaling_governor                          performance
scaling_max_freq                          3500000
scaling_min_freq                          3500000
scaling_setspeed                          <unsupported>

powersaveに設定するにはどうすればよいですか(scaling_governorファイルで変更しても何も起こりません)。

2
Jorengarenar

回答バージョン3.0

カーネルバージョン4.14.98は、ここ6か月ほどで気づいた問題をようやく修正しました。

  • システムがアイドル状態の場合、CPU周波数はターボモードで3,000 MHzに急上昇します。
  • システムがビジーの場合、CPU周波数は約1,500 MHzまで煮詰めます。

これで、システムがアイドル状態であることがわかります。システムは800 MHzになっているはずです。

enter image description here

回答バージョン2.0

OPは以下の初期回答の結果を含む質問を更新し、何らかの理由でガバナーがperformanceモードに設定され、すべてのCPUを常に最大速度で実行します。

この答えの逆を行う必要があります: 18.04でCPUガバナーをパフォーマンスに設定

使用:Sudo -H gedit /etc/rc.local put insert thisbeforeexit 0を含む最後の行:

sleep 120 # Give CPU startup routines time to settle.
echo powersave | tee /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor
echo 800000 | tee /sys/devices/system/cpu/cpu*/cpufreq/scaling_min_freq

ファイルを保存して再起動します。 CPUを再起動してから2分後に、CPUが落ち着いて正常に動作します。


/etc/rc.localが存在しない場合はどうなりますか?

これから: buntu 16.10 rc.localファイルは存在しません

以下を入力する必要があります。

Sudo systemctl enable rc-local.service

初期回答

intel_pstate CPU Performance Scaling Driver によると、intel_pstateステータスは次のようになります。

status

Operation mode of the driver: “active”, “passive” or “off”.

“active”
    The driver is functional and in the active mode.
“passive”
    The driver is functional and in the passive mode.
“off”
    The driver is not functional (it is not registered as a scaling driver with the CPUFreq core)

私の最初のステップは、カーネルコマンドラインパラメーターintel_pstate=disableを削除することです。

再起動して、次を入力します。

$ cd /sys/devices/system/cpu/cpu0/cpufreq

$ paste <(ls *) <(cat *)

affected_cpus                             0
cpuinfo_max_freq                          3500000
cpuinfo_min_freq                          800000
cpuinfo_transition_latency                0
energy_performance_available_preferences  default performance balance_performance balance_power power 
energy_performance_preference             balance_performance
related_cpus                              0
scaling_available_governors               performance powersave
scaling_cur_freq                          832522
scaling_driver                            intel_pstate
scaling_governor                          powersave
scaling_max_freq                          3500000
scaling_min_freq                          800000
scaling_setspeed                          <unsupported>

これは、intel_pstate=disableなしのデフォルト構成にあります。

scaling_max_freqscaling_min_freqに注意してください

CPU Freq Utilsパッケージを一時的にアンインストールすることもできます。

Sudo apt remove cpufrequtils

私はそれの必要性を見つけたことがなく、あなたのシステムを台無しにしているかもしれません。後で(必要な場合)再度インストールできます。

Sudo apt install cpufrequtils
1