私はLinux(Ubuntu 18.04)で4つのプロセッサコアを持つMacBook Retinaを使用しています。
$ grep -E '^model name|^cpu MHz' /proc/cpuinfo
model name : Intel(R) Core(TM) i5-4258U CPU @ 2.40GHz
cpu MHz : 799.976
model name : Intel(R) Core(TM) i5-4258U CPU @ 2.40GHz
cpu MHz : 799.993
model name : Intel(R) Core(TM) i5-4258U CPU @ 2.40GHz
cpu MHz : 799.992
model name : Intel(R) Core(TM) i5-4258U CPU @ 2.40GHz
cpu MHz : 800.016
このガバナー(およびオンデマンドガバナー)を有効にするためにacpi-cpufreq
ドライバーに切り替えました。フォローしてください(CPU ガバナーを On-Demand または Conservative に設定)そして(https://ubuntuforums.org/showthread.php?t=1767485)、次の場所で2つのカーネルフラグを有効にする必要がありましたgrub.cfg
。
intel_pstate=disable processor.ignore_ppc=1
それでも。これがcpufreq-info
私に与えるものです:
driver: acpi-cpufreq
CPUs which run at the same hardware frequency: 3
CPUs which need to have their frequency coordinated by software: 3
maximum transition latency: 10.0 us.
hardware limits: 768 MHz - 2.40 GHz
available frequency steps: 2.40 GHz, 2.40 GHz, 2.30 GHz, 2.00 GHz, 1.80 GHz, 1.50 GHz, 1.30 GHz, 1.10 GHz, 900 MHz, 768 MHz
available cpufreq governors: conservative, ondemand, userspace, powersave, performance, schedutil
current policy: frequency should be within 768 MHz and 2.40 GHz.
The governor "performance" may decide which speed to use
within this range.
current CPU frequency is 800 MHz.
だから768~2400MHzのハードウェア的限界はよく知られていますが、なぜか800MHzから抜け出すことを拒否しますね。成功せずに ondemand を使ってみました。
今楽しい部分があります。簡単に使用すると、cpupower frequency-info
次のような結果が得られます。
current CPU frequency: Unable to call hardware
current CPU frequency: 800 MHz (asserted by call to kernel)
しかし、cpupower
rootとして呼び出すと
current CPU frequency: 2.40 GHz (asserted by call to hardware)
どうやってこれができますか?カーネルとハードウェアは異なる値を報告します(遅い感じでカーネルを信頼します)。ここで何が間違っているのか知っていますか?