首页 > 解决方案 > Linux walltime 运行速度慢了大约 5 倍

问题描述

我在带有 Intel i7-9700 处理器的主板上遇到了一个非常奇怪的行为。硬件时钟 (RTC) 运行正常,但系统时间 / walltime 运行大约。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 仍然可以在这台机器上运行,我真的很惊讶。否则我现在无法访问它,因为它位于远程位置。

任何关于检查/修复什么的想法都非常感谢。

谢谢你和最好的问候,菲利普

更新:似乎挂钟不再考虑 CPU 频率缩放。CPU空闲时,时钟滴答慢;只要 CPU 有事情要做,时钟就会或多或少地正确运行。

标签: timefrequencyclockwall-time

解决方案


这个问题确实似乎与 CPU 选择/行为有关,但与频率缩放没有直接关系。显然,Intel i7-9700 和我们的主板(bcmcom MX370QD)之间存在不兼容问题。CPU 是第 9 代产品,有 8 个内核,TDP 为 65W。主板方面,支持的CPU如下:

支持第 8 代 LGA1151 Intel® Core-i™、Pentium 和 Celeron 处理器*,最高 65W TDP

支持第 9 代 LGA1151 Intel® Core-i™、Pentium 和 Celeron 处理器*,6 核或更少,最高 95W TDP

支持 8核心第 9 代 LGA 1151 Intel® Core-i™ 处理器* 高达 35W TDP

* 处理器 IccMax <= 138A。

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

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

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


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

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


推荐阅读