我在使用 Ubuntu 20.10 及其衍生产品时遇到了一个问题,其中所有核心的 CPU 时钟都固定在 800MHz。在全新安装 Ubuntu、Kubuntu 或 POP_OS! 20.10 时会发生这种情况。
但是当我安装 Ubuntu 20.04 时,一切正常 - 直到我升级到 20.10。升级后 CPU 再次卡住。
我的笔记本电脑是 Dell Precision 7530,CPU 是 i9-8950HK。有一个线程(启用 Intel SpeedStep 时 Ubuntu 非常慢(CPU 未全速使用)) 表明电源适配器存在问题,导致 BIOS 限制 CPU 扩展。我找不到任何证据表明这是我遇到的问题 - 该文件/sys/devices/system/cpu/cpu*/cpufreq/bios_limit
在我的系统中不存在。
这是 Ubuntu 20.10 上 cpu0 的输出 - 与我当前的 20.04 系统相比,我没有看到任何差异,当然除了频率更高:
analyzing CPU 0:
driver: intel_pstate
CPUs which run at the same hardware frequency: 0
CPUs which need to have their frequency coordinated by software: 0
maximum transition latency: 4294.55 ms.
hardware limits: 800 MHz - 4.80 GHz
available cpufreq governors: performance, powersave
current policy: frequency should be within 800 MHz and 4.80 GHz.
The governor "powersave" may decide which speed to use
within this range.
current CPU frequency is 800 MHz.
此外,我还想指出的是,我在另一个驱动器上双启动了这台机器和 Windows 10,而且我没有遇到任何 Windows 性能问题。但也许 Windows 设置了一些奇怪的标志,导致 Ubuntu 出现这些问题?在我使用 Ubuntu 进行的所有测试中,我都没有启动 Windows——万一这很重要。
您对如何进一步调试此问题并找到其根源有什么建议吗?
谢谢!
更新 2021.01.14
我刚刚发现这个时钟速度问题不会出现在 Ubuntu 21.04 beta 中,它是 Ubuntu 20.10 及其衍生产品特有的问题。不幸的是,这并没有告诉我确切的问题是什么,但至少它向我展示了一条等待下一个版本的可行的前进道路。
答案1
我认为这个问题可能通过删除 thermald 就能解决。
另请参阅此处:https://www.reddit.com/r/archlinux/comments/b66d3k/why_was_thermald_removed_from_the_repos/ 在该主题中,有人还提到由于 thermald 的原因,PC 卡在低频。
由于这个问题,我降级到了 ubuntu 20.04,但最近(可能是在 thermald 升级或内核升级之后),我遇到了新的问题:现在我的 PC 在负载过大时会自动关闭。因此,经过进一步研究,我决定删除 thermald 是安全的,现在这个问题已经解决了。
我不想再次尝试升级到 ubuntu 20.10,但遇到此问题的人都可以尝试删除 thermald。
答案2
在 20.04 上,我解决这个问题的方法是添加intel_pstate=active
到 grub。我曾在某处读到,尽管它之前处于主动模式,但它处于被动模式。