Linux walltime 运行速度慢了大约 5 倍

Linux walltime runs approx 5x too slow

我在配备 Intel i7-9700 处理器的主板上遇到了一个非常奇怪的行为。硬件时钟 (RTC) 运行正常,但系统时间/墙时间运行大约。 5 倍太慢:

$ sudo hwclock; sleep 10; sudo hwclock
2020-11-20 09:38:19.667199+00:00
2020-11-20 09:39:07.479683+00:00

10 秒的睡眠用了将近 50 秒才完成。系统时间耗尽得如此之快以至于几乎所有与加密相关的东西都会失败,例如用于下载更新的 HTTPS 连接。由于巨大的不匹配,我想某处的某些频率信息是完全错误的,但是去哪里找呢?

安装的发行版是 Ubuntu 20.04.1 LTS。我之前没有明确检查过,但由于明显的症状,这个问题应该是最近才出现的。我真的很惊讶 WiFi 和 OpenVPN 仍然可以在那台机器上运行。否则我现在无法访问它,因为它位于远程位置。

任何关于 check/fix 的想法都非常感谢。

谢谢你和最诚挚的问候, 菲利普

更新:wallclock似乎不再占CPU频率缩放。当 CPU 空闲时,时钟滴答缓慢;一旦 CPU 有事情要做,时钟就会或多或少地正确运行。

这个问题似乎确实与 CPU choice/behaviour 有关,但与频率缩放没有直接关系。显然,Intel i7-9700 和我们的主板 (bcmcom MX370QD) 不兼容。 CPU9代产品,8核,TDP 65W。主板方面,支持的CPU如下:

Supports 8th Gen LGA1151 Intel® Core-i™, Pentium, and Celeron processors* up to 65W TDP

Supports 9th Gen LGA1151 Intel® Core-i™, Pentium, and Celeron processors* with 6 cores or less & up to 95W TDP

Supports 8 Core 9th Gen LGA 1151 Intel® Core-i™ processors* up to 35W TDP

* Processor IccMax <= 138A.

仔细检查,由于TDP的核心数过多或TDP的核心数过多,该变体实际上并未得到官方支持。为什么这些限制适用,我不知道。但是:

解决方案:通过使用 maxcpus=6 内核参数在启动时禁用两个 CPU 内核,问题就消失了。

问题的根本原因是什么,我不知道。也许对 x86 硬件上的 Linux 计时系统有深刻理解的人有答案。


旧答案,只是改进了,但没有固定时间

好的,我不知道问题的真正原因是什么,但是将所有 BIOS 设置恢复为默认设置修复了它。 walltime 现在可以正确运行并允许 NTP 同步。