My 2025 high-end Linux PC 🐧

Michael Stapelberg

我的 2025 年高端 Linux 主机 🐧

原文由 Michael Stapelberg 发布,订阅该博客

结果发现,上次装机时那颗 CPU 本来就有故障!换上新 CPU 后,机器现在既稳定又飞快!🚀 本文会更详细地聊聊各个配件的选择理由,简而言之,我选择 Intel 285K 是为了获得更低的待机功耗,选了 4TB 的固态硬盘以免很快就把空间用满,还配了一张性能足够的 NVIDIA 显卡来驱动我的 Dell UP3218K 8K 显示器

配件清单

这次装机我选了哪些配件?完整清单如下:

价格类型型号
140 CHF机箱Fractal Define 7 Compact Black Solid
155 CHF电源Corsair RM850x
233 CHF主板ASUS PRIME Z890-P
620 CHF处理器Intel Core Ultra 9 285K
120 CHFCPU 散热器Noctua NH-D15 G2
39 CHF机箱风扇Noctua NF-A14 PWM (140 mm)
209 CHF内存64 GB DDR5-6400 Corsair Vengeance (2 x 32GB)
280 CHF硬盘4000 GB Samsung 990 Pro
554 CHF显卡MSI GeForce RTX 3060 Ti GAMING X TRIO

总计:2350 CHF

接下来几节会详细介绍我是如何挑选这些配件的。

机箱

我已经用了好几代 Fractal 的机箱。尤其是我发现,即便是“Compact”系列,给大尺寸显卡和 CPU 散热器留出的空间也绰绰有余,所以它现在成了我的首选:Fractal Define 7 Compact(Black Solid)。

我对机箱的一般要求如下:

  1. 机箱本身就要尽可能安静,不需要额外折腾。
  2. 机箱不能有锋利的边角(避免划伤)。
  3. 内部空间要恰到好处,方便安装和维护各个部件。
  4. 越有利于整洁走线的设计越好。
  5. 需要配备 USB 3.0 前置面板接口。

我非常喜欢在这款机箱里装机、操作。机箱没有任何锋利边缘,各种结构用起来很顺手,走线设计也考虑得很周到。

唯一不够完美的是,Fractal 把机箱螺丝装在需要剪开的密封塑料袋里。我更希望能用可重复封口的小袋子,这样多余的螺丝就能收好,不至于弄丢。

经过这次装机,我所有的电脑都统一换成了 Fractal Define 7 Compact Black 机箱!

电源

我想为以后升级到 NVIDIA 50xx 系列显卡留有余地。这些型号的 TGP(Total Graphics Power,显卡总功耗)高达 575 瓦,因此我需要一款即便在各部件都达到峰值功耗时也能为整机提供充足供电的电源。

最终我选了 Corsair RM850x,评测对它的评价很高(“850W 金牌中的领跑者”),而且在我常去的电子商店也有现货。

事实证明这是个不错的选择:电源运行起来确实很安静,而且我很喜欢它附带的电源线(比如显卡供电线),线材非常柔软,很容易整理走线。

一个有意思的发现是,与其直接用电源自带的 12VHPWR 线,不如坚持用老式的 8-pin 显卡供电接口,再配合 12VHPWR 转 8-pin 转接头,反而更方便。原因是 12VHPWR 接口的卡扣非常难拔,在排查故障期间我需要多次更换显卡,拔 8-pin 接口要轻松得多……

固态硬盘

到目前为止我一直在回避 PCIe 5.0 固态硬盘,因为相比 PCIe 4.0,它们的功耗要高得多。虽然 PCIe 5.0 在连续大文件读写上的速度更快,但随机读写的提升并不明显。而我的日常负载大多是随机读写,并非大块连续传输。

最近 PCIe 5.0 硬盘的功耗情况似乎有所好转,Phison E31T 是首款加入节能功能的主控。采用 E31T 主控的盘之一就是 Corsair Force Series MP700 Elite。可惜我下单时这款盘没货。

于是我选了 4TB 的 Samsung 990 Pro。这些年来我对 Samsung Pro 系列的体验一直很好(从未遇到过掉盘或性能衰减),而且之前那块 2TB 的盘也快满了,多出来的空间正好派上用场。

板载 2.5GbE 网卡

让人头疼的一点是,大多数主板厂商似乎都已转向板载 2.5GbE(即 2.5 Gbit/s 以太网)网卡。只要能在 Linux 上即插即用,我其实更愿意稳妥地再买一块 Intel I225 千兆网卡。

在 2.5GbE 领域,主要玩家似乎就是 Realtek 和 Intel。就我观察,大多数主板厂商都选择了 Realtek。

Linux 为 Realtek 网卡提供了 r8169 驱动,但能否开箱即用,取决于网卡的具体版本!例如:

  • AsRock Z890 Pro-A 是 8125B 版本。lshw 显示:firmware=rtl8125b-2_0.0.2 07/13/20
  • ASUS PRIME Z890-P 则是 8125D 版本。lshw 显示:firmware=rtl8125d-1_0.0.7 10/15/24

对于 8125D 版本,你需要足够新的 Linux 版本(6.13+),其中包含了“r8169: add support for RTL8125D”这一提交,同时 linux-firmware 包也要足够新。

即便有了最新固件,对稳定性和 ASPM 支持的担忧依然存在。例如可以看看这位参与 r8169 驱动开发的人写的这篇 ServerFault 帖子。不过,尽管 Intel 的千兆网卡如今支持已经很完善,Intel 的 2.5GbE 网卡表现也未必比 Realtek 好:我也看到了关于 Intel 2.5GbE 网卡不稳定的报告

不过话说回来,除了固件要求有点烦人之外,这块 Realtek 2.5GbE 网卡在我这里实际用起来倒是没什么问题。

主板

尽管网卡的选择不算理想,我还是决定沿用 ASUS PRIME 系列主板,因为过去几次装机中它的表现都很不错。下面是我对这次选用的 ASUS PRIME Z890-P 的几点体会:

  • 我很喜欢它的 PCIe 快拆结构:ASUS 显然意识到人们很难从插槽中解锁大尺寸显卡,于是加了一个很容易够到的拨杆式机构。就我这几次使用来看,效果相当不错!
  • 我曾在2022 年装机的启动缓慢问题一文中写过,漫长的内存训练会导致开机变慢。在这块 ASUS 主板上,我注意到它会通过闪烁电源指示灯来提示正在进行内存训练。非常贴心!我以前从没想过,不同的启动阶段可以通过电源灯的不同闪烁方式来提示 :)
    • 这个功能的缺点是:机器进入 suspend-to-RAM(待机)时,电源灯也会闪烁!这有点烦人,所以我可能会干脆把电源灯线拔掉。
  • UEFI 固件里有一个叫 Q-Dashboard 的功能:可以直观地看到各个插槽上安装/连接了什么。相当不错:

我测试的两块主板之间一个令人意外的区别是,AsRock Z890 Pro-A 似乎无法在 lshw 中正确报告 DIMM 时钟频率,而 ASUS 则可以:

--- lshw-intel-285k-asrock.txt	2025-04-30 20:35:24 +0200
+++ lshw-intel-285k-asus.txt		2025-04-30 21:39:52 +0200
      *-firmware
           description: BIOS
-          vendor: American Megatrends International, LLC.
+          vendor: American Megatrends Inc.
           physical id: 0
-          version: 2.25
-          date: 03/24/2025
+          version: 1601
+          date: 02/07/2025
           size: 64KiB
-          capacity: 32MiB
+          capacity: 16MiB
           capabilities: pci upgrade shadowing cdboot bootselect socketedrom edd acpi biosbootspecification uefi
[…]
      *-memory
           description: System Memory
-          physical id: 9
+          physical id: e
           slot: System board or motherboard
           size: 64GiB
         *-bank:0
-             description: DIMM [empty]
+             description: [empty]
             physical id: 0
             slot: Controller0-ChannelA-DIMM0
         *-bank:1
-             description: DIMM Synchronous 4800 MHz (0,2 ns)
+             description: DIMM Synchronous 6400 MHz (0,2 ns)
             product: CMK64GX5M2B6400C32
             vendor: Corsair
             physical id: 1
@@ -40,13 +42,13 @@
             slot: Controller0-ChannelA-DIMM1
             size: 32GiB
             width: 64 bits
-             clock: 505MHz (2.0ns)
+             clock: 2105MHz (0.5ns)
         *-bank:2
-             description: DIMM [empty]
+             description: [empty]
             physical id: 2
             slot: Controller0-ChannelB-DIMM0
         *-bank:3
-             description: DIMM Synchronous 4800 MHz (0,2 ns)
+             description: DIMM Synchronous 6400 MHz (0,2 ns)
             product: CMK64GX5M2B6400C32
             vendor: Corsair
             physical id: 3
@@ -54,7 +56,7 @@
             slot: Controller0-ChannelB-DIMM1
             size: 32GiB
             width: 64 bits
-             clock: 505MHz (2.0ns)
+             clock: 2105MHz (0.5ns)
[…]

我还没去验证是否存在可测量的性能差异(比如 XMP 配置是否真的生效),但至少你现在知道,不能完全相信 lshw 显示的内容。

CPU 散热器

我一直是 Noctua 的忠实用户:这家公司做的风扇既安静,散热能力又强,而且非常可靠!多年来,我把每台电脑的所有风扇都换成了 Noctua,每次都是升级。强烈推荐。

因此,这次装机选用 Noctua 最新最强的 CPU 散热器——Noctua NH-D15 G2——是毫无悬念的。关于这款散热器,有几点需要注意:

  • 我决定只装一个风扇,而不是两个:单风扇是最安静的方案,同时对这套配置来说散热能力也已绰绰有余。
  • 它有 3 个版本,区别在于底板的形状。Noctua 建议:“对于 LGA1851,我们通常推荐中等凸度的常规标准版”(https://noctua.at/en/intel-lga1851-all-you-need-to-know
  • 散热器高度为 168 mm,正好能装进 Fractal Define 7 Compact Black。

CPU 与显卡:待机功耗 vs 峰值性能

CPU 选择:为何选 Intel 而非 AMD

这次配置中最让人疑惑的,恐怕就是我为什么选了 Intel 而非 AMD。最主要的原因是 Intel CPU 在节能方面要出色得多!

容我解释一下:网上大多数跑分都是面向游戏玩家的,测的是“打开游戏,让电脑满载跑几个小时”这种使用曲线。当然,如果机器从不空闲,你关心的会是能效:要达到预期效果需要消耗多少电量?

我的使用场景是软件开发,而非游戏。我的负载曲线在“几乎零负载,因为我只是在看文字”和“动用全部性能尽快完成编译”之间来回摆动。对我来说,待机时的绝对功耗和满载时的绝对性能都必须是一流的。

AMD 的 CPU 性能很强(最近发布的 Ryzen 9 9950X3D 甚至比 Intel 9 285K 还快),而且能效也很出色,但待机功耗却很差:Zen 5 CPU 待机功耗约 35W,是 Intel CPU 的约 3 倍!

Intel 的 CPU 同样性能出色(与 AMD 相当),但待机功耗却非常优秀。

因此,我实在没法心安理得地买 AMD CPU,不过如果你想要一台纯粹的高速游戏主机,或者用这些 CPU 跑常年满载的 HPC 集群,那就尽管入手吧 :)

显卡:为何选 NVIDIA 而非 AMD

我并不是特别推荐某一款 NVIDIA 显卡,但我不得不坚持用 NVIDIA,因为只有它能搞定我那台挑剔的Dell UP3218K 显示器

我时不时会尝试不同的显卡。最近我入手了一块 AMD Radeon RX 9070,因为听说它对开源驱动的支持很好。

虽然 Radeon RX 9070 能正常点亮我的显示器(很好!),但它待机功耗高达 45W,远高于我的 NVIDIA 显卡待机时的约 20W。这对我来说无法接受:除了电费更高、浪费资源之外,高功耗还意味着夏天房间会更热,风扇也必须转得更快、更吵。

社交媒体上有人问我这会不会是测量误差(比如显卡上报的数值不准),所以我用 myStrom WiFi Switch 复测了一下,确认装上 Radeon 显卡后,整机从墙上插座多消耗了 20-30W。

为什么低待机功耗如此重要

上一篇关于这台机器首次装机不稳定的博文评论区里,有人问为几瓦功耗去优化是否值得。有人算了算更高功耗会多花多少钱,再和整机配件的总价对比,得出结论:省下那 ±10% 的费用根本不值得费心。

我想用一个小故事来说明低待机功耗的重要性:有一年,我深受一个 NVIDIA 驱动 bug 的困扰,导致显卡无法降至最高效的节能模式(因为我的显示器分辨率太高)。10-20W 的差距本该微不足道。然而,当这个 bug 被修复后,我立刻注意到电脑变安静了(风扇无需加速),房间温度也明显下降,这在盛夏高温时感觉特别好。

对我而言,拥有一个安静到近乎无声、又不会让房间升温的计算环境,是实实在在、可以切身感受到的好处。至于不浪费资源、还能省下一点电费,不过是锦上添花。

当然,所有这些因素都高度取决于你的具体情况:你家的保温隔热情况可能和我不同,你对噪音的容忍度(或环境底噪)也可能不一样,你对资源消耗的重视程度也各有差异,等等。

安装

UEFI 设置

我在网上看到,有人提到主板默认的功耗限制(Power Limits)存在一些问题。因此,我一拿到主板就立刻做了 UEFI 固件更新。我使用 UEFI 界面中的 EZ Flash 工具,通过一个格式化为 MS-DOS FAT 的 U 盘上的官方 ZIP 文件(PRIME-Z890-P-ASUS-1404.zip)升级到了 1404 版(2025/01/10)。小提示:不要解压 ZIP 文件,否则 EZ Flash 工具就无法更新 Intel ME 固件。直接把 ZIP 文件原样放到 U 盘上即可。

我确认在这个 UEFI 版本下,Power Limit 1 (PL1) 为 250W,ICCMAX=347A,这正好是 Intel 推荐的数值。很好!

我还开启了 XMP,并确认 memtest86 没有报任何错误。

软件配置:尝鲜者的阵痛

为了把数据从旧硬盘拷贝到新硬盘,我想启动一个 Live Linux 发行版(具体来说是 grml.org),然后按我的常规流程操作:同时接上旧盘和新的空盘,再用 dd 拷贝数据。简单直接,不容易出错。

不幸的是,虽然 grml 2024.12 理论上能启动,但有两个大问题:

  1. 由于内核和 linux-firmware 版本太旧,无法联网。

  2. 我完全无法让 Xorg 跑起来。无论是用 Intel 核显还是 NVIDIA 独显都不行,加上 nomodeset 或 grml 菜单里的其他选项也无济于事。这不仅仅是方便与否的问题:我需要用到 gparted(图形界面版)来移动和调整分区。

最后,更省事的办法是先把旧电脑升级到 Linux 6.13 和 linux-firmware 20250109,然后再装上新硬盘,把系统拷贝过去。

记得给 SSD 开启 TRIM

固态硬盘用久了性能会下降,因此操作系统必须将已释放的数据块告知 SSD 固件(以便进行磨损均衡)。如果使用了全盘加密,则所有相关层都必须启用 TRIM 支持。

我想我早在 2022 年就亲身体验过 TRIM 配置不当的后果,当时我把数据从 Force MP600 拷贝到 WD Black SN850,竟然花了好几个小时!

为了确保硬盘能够长久健康地工作,我在 Arch Linux 系统上仔细检查了定期和持续 TRIM 都已启用fstab(5) 文件中包含了 discard 选项(并且 mount(8) 也显示了 discard 选项),而且 fstrim.service 在过去一周内已运行过:

systemd[1]: Starting Discard unused blocks on filesystems from /etc/fstab...
fstrim[779617]: /boot: 10.1 GiB (10799427584 bytes) trimmed on /dev/nvme0n1p1
fstrim[779617]: /: 1.8 TiB (2018906263552 bytes) trimmed on /dev/mapper/cryptroot
systemd[1]: fstrim.service: Deactivated successfully.

说到拷贝数据:从我的 WD Black SN850 到 Samsung 990 PRO 的传输速度为 856 MB/s,总共花了约 40 分钟。

性能

以下是我日常几项典型负载的总耗时:

工作负载12900K(2022)285K(2025)
build Go 1.24.3 (cd src; ./make.bash)≈35s≈26s
gokrazy/rsync tests (make test)≈0.5s≈0.4s
gokrazy UEFI test (go test ./integration/...)≈30s≈10s
gokrazy Linux compile (gokr-rebuild-kernel -cross=arm64)3m 13s2m 7s

性能提升非常明显!编译 Linux 内核能快整整一分钟,感觉真的很棒。

稳定性问题

今年三月,我发表了一篇关于这台机器首次装机不稳定的文章,里面详细记录了我遇到的各种崩溃情况。

如今到了五月初,在经历了漫长的排查——把这台电脑的所有其他部件都换了一遍,最后把 CPU 寄回去换了新的——之后,我可以确定就是 CPU 有故障。

CPU 是这次装机中最难排查的部件,因为它是 LGA 1851 接口,而我(暂时)没有其他使用同款接口的机器。在这种情况下,AMD 长期沿用同一接口的做法会更有利。

压力测试

当我发表那篇关于电脑不稳定的早期博文时,我其实还不知道如何稳定地复现问题。一些计算密集型任务,比如跑 Django 测试套件,似乎会触发故障。我怀疑问题后来不知怎么变严重了,因为当我开始对机器进行压力测试时,编译 Linux 内核竟会每次都崩溃。

这让我好奇其他知名的 CPU 压力测试工具,比如 Prime95,是否也会报错,结果不出所料:Prime95 在几秒钟内就报了错。

于是我决定把 Prime95 当作快速检测信号:如果它报错,就说明机器有故障。这通常在启动 Prime95 后几秒内就会发生。

如果 Prime95 没有报错,我就会用编译 Linux 内核作为慢速信号:如果能成功编完内核,机器大概就足够稳定了。

我具体的做法是运行 ./mprime -m,按 N(不参与分布式计算项目),然后按几下回车确认默认选项。随后 Prime95 开始计算,将 CPU 推至 100% 占用(可通过我的 gokrazy/stat 实现的类似 dstat(1) 的输出查看),并从墙上插座消耗预期的约 300W 功率:

运行 Prime95 对 CPU 进行压力测试的照片电脑功耗截图

此外,我还跑了几个小时的 MemTest86

运行 memtest86 的照片

需要说明的是:之前那台不稳定的机器上我也成功跑过 MemTest86,所以如果面对的是故障 CPU,光跑 MemTest86 是不够的。

售后换货时间线

  • 1 月 15 日:收到新电脑的配件
    • 1 月和 2 月,电脑偶尔会崩溃。
  • 3 月 4 日:换回旧电脑,开始写博文
  • 3 月 19 日:发布关于机器不稳定的博文
    • 网上的讨论没有带来任何有价值的建议或线索。
  • 3 月 20 日:订购 AsRock Z890 Pro-A 主板以确认主板没问题
  • 3 月 24 日:AsRock Z890 Pro-A 到货
  • 4 月 5 日(周六):为 CPU 发起售后
    • 他们让我把 CPU 寄给 orderflow,也就是实际履行我这笔订单的商家。
    • 我通常更喜欢直接在 digitec 购买,但如今 digitec 上很多 PC 配件似乎只能从 orderflow 买到。
  • 4 月 9 日(周三):包裹到达 orderflow(digitec 给我的是非优先退货面单)
  • 4 月 14 日(周一):收到 digitec 客服的如下邮件,我不得不解释我已经彻底诊断出 CPU 有故障(附上我的博文链接就够了):

经销商已向厂商报备,厂商有以下几个问题:

为确保我们正确理解了您的情况:您是在两块不同的主板上测试了该 CPU,且同样的问题依然存在吗?

您能否告知这两块主板分别是什么品牌和型号?

两块主板是否都使用了最新的 BIOS 版本?

这个问题是一开始就存在,还是后来才出现的?

处理器是否超频过?(请注意,超频会导致保修失效。)

  • 4 月 25 日(周五):orderflow 将换新的 CPU 交给瑞士邮政寄出
  • 5 月 1 日(周四):机器顺利通过压力测试;我开始正式使用

总的来说,三月里我没有可用的电脑,但那是因为我没太多时间来推进这件事。接着,整个四月我也没有可用的电脑,因为通过 digitec 给 Intel CPU 走售后的流程似乎相当缓慢。我本来希望能得到多一点信任,直接先换一颗新的 CPU 就好。

总结

这次装机真是跌宕起伏、耗费了大量时间!我这辈子还从未收到过到手即坏的 CPU。第一颗 CPU 是怎么通过 Intel 质检的?还是说它本来通过了质检,却在运输途中损坏了?我恐怕永远也不会知道答案。

从今往后,我知道要对新装的电脑进行充分的稳定性压力测试,以便更快地发现这类问题。万一 CPU 真有故障,不幸的是换货就要花上一个月——让这么贵的一台机器白白吃灰一个月,实在让人恼火。

不过,一旦换掉故障部件,这就是我迄今为止最满意的一次装机:

机箱尺寸与各个配件完美契合,在这台电脑的整个生命周期里——包括故障排查阶段,以及日后它退居为“实验机”再到最终二手转卖、希望能再被他人使用几年的阶段——都能极其方便地接触到所有部件。

这台机器既安静,功耗又低(以如此强大的性能而言),而且性能十分强劲!

和往常一样,我在这台电脑上运行 Linux,日常使用中没有遇到任何问题。我每天都会多次使用 suspend-to-RAM(待机),一切正常。

希望这些细节对你自己的装机也能有所启发、有所帮助!

如果你想了解除了 8K 显示器之外我还用了哪些外设(比如 Kinesis Advantage 键盘、Logitech MX Ergo 轨迹球等),可以看看我的文章 stapelberg uses this: my 2020 desk setup。也许以后我会发布一个更新版 :)

本文章由 muse-spark-1.2-contributor 进行翻译

评论