SATA 控制器似乎会减慢内核编译速度(SATA HD 断开连接时为 8.48 分钟 vs 1.30 分钟)

SATA 控制器似乎会减慢内核编译速度(SATA HD 断开连接时为 8.48 分钟 vs 1.30 分钟)

好吧,这很奇怪

当硬盘或 DVD-RW 等 SATA 设备连接到我的盒子时,在配备 Samsung NVME 970 Evo 和 16GB RAM @ 3200 的 Ryzen 5950x 上,Linux 内核编译 (5.12.4) 大约需要 8 到 9 分钟全部安装在 AsRock b550 Taichi 主板上。可旋转硬盘仅连接至主板上的SATA端口,未挂载任何分区。

当我从主板的 SATA 端口物理断开/拔出 HD 时,完全相同的过程(干净编译,从全新的存档开始)大约需要 1.30 分钟。

即使当我连接 DVD-RW 时也会出现同样的速度减慢,但当我将 SSD 连接到 SATA 端口时则不会出现这种情况。

我非常困惑,在我看来,当连接旧技术设备时,芯片组上的 SATA 控制器似乎会以某种方式干扰处理器的速度。

以下是我运行的编译内核的命令:

tar xf linux-5.8.10.tar.gz
cd linux-5.8.10
cp /boot/config-`uname -r` .config
yes '' | make oldconfig
make clean
time make -j32 LOCALVERSION=-custom

我运行的是 Ubuntu 20.04。我已断开 HD 的连接并通过 USB 使用它,以避免速度变慢。

答案1

您的 SATA 电缆可能会受到来自机箱内其他组件的射频干扰,或者在 SATA 连接上产生杂散信号。这会不断触发 SATA 控制器和/或操作系统来检查设备的状态,从而干扰主板数据总线上的流量和/或浪费 CPU 时间。

在这种情况下,我希望内核向内核消息缓冲区和/或系统日志发出大量错误消息。使用dmesg命令查看内核消息;查看是否有任何与 SATA 相关的错误消息。

答案2

我通过将 BIOS/EFI 从 1.80 更新到 1.90(撰写本文时的最新版本)解决了该问题,可以从 asrock.com/MB/AMD/B550%20Taichi/index.asp#BIOS 获取

相关内容