我们先从一些历史开始:
- 2016 年:在 Skylake 上打造低功耗 PC – 空闲时功耗为 10 瓦
- 2019:空转功率9瓦:打造一台低功耗家用NAS/文件服务器,配备4个存储驱动器
- 2021 年:(无说明)– 使用英特尔 i3-10320 和技嘉 H470M DS3H,功耗为 11 瓦
并非所有我的系统都如此成功。2022 年,作为“通过多显示器抑制 AMD Radeon 的“耗油”趋势”的一部分,我测量了其他几个系统的功率,分别为 19 瓦和27 瓦。虽然我确实设法在一段时间后降低了 27 瓦的 AMD 系统的功率,但并非每个 CPU/主板组合都注定要达到 10瓦特棒球场。
—
先说这么多,这个系统的 7 瓦数字是在添加存储之前。7 瓦(在墙上测量)包括:
- 主板(英特尔 H770)
- 中央处理器 (英特尔 i5-12400)
- 64GB 内存
- SSD(启动 Ubuntu Server 23.04)
- 电源(海盗船)
- 在 BIOS 中设置 C 状态,以便达到 C8
- 具有自动调节功能的powertop(当端口进入睡眠状态时禁用 USB 键盘)
请注意,如果我不允许powertop禁用键盘,我会在墙上测得 8 瓦的功率。
—
让我们详细了解一下规格和组件选择。这次我有以下目标:
- 低空闲功率
- 合理的 CPU 性能以实现压缩
- 能够处理 12 个硬盘 + 至少 1 个 NVMe
- 最终将这 12 个硬盘转换为 6 个 NVMe + 6 个 SSD SATA 的容量
- 控制成本——因为需要购买主板,所以尽量坚持使用 DDR4 并重复使用我已有的 CPU。
组装一个新系统并希望达到 10 瓦左右(从墙上测量)通常不仅是一项挑战,而且有点冒险。有时,您只需要在组件方面做出最有根据的猜测,构建您的设备,尽可能地进行调整,然后让芯片落到它们可能落到的地方。
主板 – ASUS Prime H770-Plus D4
在我开始之前,先快速看一下主板布局。绿色 CPU 连接插槽和橙色芯片组连接插槽将在本文中介绍。
在撰写本文时,广泛使用的消费者选择是英特尔 600/700 系列和 AMD 500/600 系列主板。
我上述目标之一是最终实现 6 个 NVMe 驱动器的容量。
深入挖掘为什么这可能是一个挑战(请随意跳过本节)…
问题:有 0 个消费级主板带有 6 个 M.2 插槽,可在 PCIe 模式下同时使用。在 AMD 上,MEG X570S Unify-X Max *看起来* 就是这样,但查看手册你会发现,如果你尝试填充所有 6 个插槽,最后一个必须是 SATA 变体。ASRock Z790 PG Sonic 也有 6 个插槽,但你只能使用其中 5 个(有一个合理的理由:他们提供了一个 Gen5 NVMe 插槽,但它带有一个非此即彼的警告)。
问题存在的原因:消费级主板的芯片组通道有限。假设我希望能够在 Gen4x4 中运行所有 M.2,并且假设制造商实际上愿意将所有通道用于 M.2 NVMe 插槽(他们不愿意),AMD X570 和 Intel B760 最多可容纳 3 个 M.2 插槽,而 AMD B650 和 Intel H670/Q670/Z690/W680 最多可容纳 4 个。AMD X670 和 Intel H770 主板上可以容纳 5 个 M.2 插槽。Z790 主板上可以容纳 6 个。除此之外,还需要采取一些非常措施,例如占用主 PCIE 插槽的通道。如果需要纯粹的 M.2 数量,制造商理论上可以在 Gen4x2 中运行通道或添加一些 Gen3 M.2 插槽,但此时他们已经创建了一个*非常*小众的产品。
解决方案: PCI-E 转 M.2 适配器变得必不可少。现在,在搜索主板时,问题变成了是否将随附的 M.2 插槽添加到任何可用的 x4 或更高 PCI-E 插槽中。我的选择现在仅限于 AMD X570、Intel H770 和 Intel Z790 主板。请注意,虽然在某些主板上使用分叉可以从主 PCIe 插槽中获取超过 1 个 NVMe,但我决定不依赖它。
我决定采用英特尔路线有几个原因:
- 芯片组 TDP: 600/700 系列 Intel 芯片组的 TDP 均为 6W,而 AMD X670 芯片组的 TDP 相当高(7w+7w)。AMD 芯片组的功耗让我担心了一段时间,因为之前的 X570 芯片组的 TDP 为 11w,并且需要风扇。
- 芯片组速度:英特尔 H670/Q670/W680/Z690/H770/Z790 芯片组通过 DMI 4.0 x8 连接至 CPU。AMD X570/B650/X670 通过 PCIe 4.0 x4 连接至 CPU。英特尔的理论吞吐量应该是 AMD 的两倍(16GB/s vs 8GB/s)。
- 我已经拥有 64GB 的 DDR4,可供英特尔系统使用。AMD 600 系列芯片组全部仅支持 DDR5。
- 我已经有了一个英特尔第 12 代 CPU。
- 我还没有看到任何关于 AM5 功耗的积极讨论。一点也没有。更新:在我写这篇文章的时候,实际上有消息称 AMD 7000 系列 CPU 在主板插槽针脚与 CPU 相接的地方会燃烧/膨胀。是的,对不起 AMD,这次不会了。
所以就选了英特尔。在查看了市场上可用的 DDR4 主板后,我很快将选择范围缩小到 2 家制造商:MSI 和 ASUS。
不关心主板比较?请跳过此部分。
诱人的 MSI 主板是 PRO Z790-P WIFI DDR4 和 Z790-A WIFI DDR4。表面上几乎完全相同,只是“A”更高级一些(音频、后置端口、散热器、电源相位等)。优点/缺点:
- Pro:4x M.2(Gen4x4)+ 1x PCIE Gen5x16 + 1x PCIE Gen4x4 共支持 6 个 Gen4 NVMe
- 优点:额外 2x PCIE Gen3x1
- 优点:6 个 SATA 端口
- 缺点:英特尔 2.5G LAN(已知存在问题和缺陷)
- 缺点:我不喜欢 MSI BIOS
- 缺点:我当前的 B660 主板是 MSI,其空闲功耗比预期要高。
华硕的诱人选择是 Prime H770-Plus D4 和 Prime Z790-P D4(可选 WIFI 版)。选择 TUF、Strix 或 ProArt 太贵了。
我将首先列出 H770-Plus 的优点/缺点:
- Pro:3x M.2(Gen4x4)+ 1x PCIE Gen5x16 + 2x PCIE Gen4x4 共支持 6 个 Gen4 NVMe
- 优点:额外 2x PCIE Gen3x1
- 缺点:只有 4 个 SATA 端口
优点:2.5G Realtek 网络适配器(目前比英特尔 2.5G LAN 更可取)(见评论)Z790-P D4 与之类似,只是它具有更多的电源相、更好的散热、更多的 USB 端口、额外的风扇接头,并且就我们的目的而言……:
- +1 PCIE Gen4x4
- -1 PCIE Gen3x1
最终,我选择了华硕 Prime H770-Plus D4,当时它便宜了约 100 美元。
我发现“较便宜”的主板的一个优点是它们往往具有较少的组件,因此空闲时耗电较少,尽管这并非总是肯定的。
CPU – 英特尔 i5-12400(H0 步进)– Alder Lake
我在之前的台式机构建中已经拥有这款 CPU。当时它被选为台式机系统是因为:
- 它有 AV1 硬件解码
- 它具有英特尔第 12 代产品线中最高的性能,避免了 E 核硅片的开销
- 在那个版本中,我无论如何都会得到一个带有 2xDP 的新主板,而使用旧一代对我来说没有意义。
该桌面版本令人失望,是我最不喜欢的版本之一。
一些细节…
我遇到的问题是,有时只有 2 个 DP 连接显示器中的 1 个可以在 Linux 中唤醒,这意味着我必须拉/重新连接另一个 DP 连接器,或者手动暂停/恢复系统以便它可以再试一次。
另一个问题是,在 Windows/Linux 之间重新启动有时会导致奇怪的问题,需要完全关闭电源/重新启动。
在 Ubuntu 上使用 Wayland 进行硬件解码仍然存在问题,当程序尝试使用它来播放视频时,就会出现问题。
最后,与我以前的英特尔系统不同,这些系统的功耗都可以降到 10 瓦左右,而这个系统的空闲功耗却达到了 19 瓦,不过我怀疑我使用的 MSI 主板可能是一个因素。
我遇到的大部分麻烦都与 GPU 和显示器有关。由于我即将构建面向服务器的东西,所以这不再是一个问题。
内存 – 64GB DDR4-3200
以下是我使用的方法:
- 2x16GB 金士顿 HyperX 双列 (Hynix DJR)
- 2x16GB 金士顿 HyperX 单列(海力士 CJR)
这是我已经拥有的内存。我在双列套件的 XMP 配置文件(即 16-18-18-36)下运行了 4 根内存。除了我在 1.25 伏(高于原厂 1.20,但低于 XMP 1.35v 设置)下运行 RAM 外,其他一切基本都保留默认设置。TestMem5 和 Memtest86 显示在 1.22v 下稳定,尽管在之前的主板上测试此内存显示 1.22v 不稳定,因此为了在稳定性方面获得一点额外的缓冲,我将电压提高到 1.25v。
启动驱动器 – Sandisk Ultra 3D 1TB SSD
这个组件不是特意选择的。当我想安装一个全新的 Ubuntu Server 进行测试时,这恰好是我手头上唯一一个目前未使用的 SSD。我将在 PCIE 和 NVMe 设备上进行大量 A/B 测试,因此将 Ubuntu 23.04 安装到 SATA SSD 是合理的,可以保持 PCIE 插槽空闲。
请注意,经过测试后,主操作系统将在三星 SSD 970 EVO Plus 500GB NVMe上运行。除了三星产品往往可靠地进入低功耗模式外,没有太多可说的。
我使用过这两款硬盘,但在测试中我没能测量出它们之间的功率差异。Tom’s Hardware 测试的三星硬盘空闲时功率为 0.072 瓦(通过 ASPM/APST),Anandtech 测试的 Sandisk Ultra 3D 空闲时功率为 0.056 瓦(通过 ALPM)。这两款硬盘的功率都远低于我的 Kill-A-Watt 仪表的 1W 分辨率。
电源 – Corsair RM750
虽然这款 750W PSU 对于一个功耗约为 10 瓦的系统来说似乎有点过大,但当 12 个驱动电机同时启动时,瞬时负载可能会非常高。希捷表示,其 10TB 3.5 英寸硬盘之一的 12V 导轨上的直流/交流峰值电流为 2A/3A。即使是峰值随机读/写也可以超过 2A。
如果 PSU 无法胜任,这种突发性电力需求可能会带来问题。如果 6 个驱动器阵列总共消耗 150-200 瓦电力,同时 CPU 峰值消耗 120 瓦电力,那么空闲时约 10 瓦电力将跃升至约 400 瓦电力。这很容易导致电压瞬时下降 – 如果电压下降到足以导致立即崩溃/重启,则可能不是什么大问题,但如果电压下降到足以在内存刷新期间或另一个驱动器写入过程中损坏数据……那就更麻烦了。将 PSU 增大到一定程度(或在电源轨上添加一些串联电容器)是有意义的。
幸运的是,尽管在峰值效率范围之外运行,Corsair RM 系列的大部分产品在很宽的范围内仍然非常高效。
功率测量 – 初始
一些重要信息:
- 从墙上测量的功率
- 使用 Intel PowerTOP 自动调整设置
- Ubuntu 服务器 23.04
一些可能重要的BIOS位:
- BIOS 中启用了 CPU C 状态(C10)
- 已启用 ASPM,所有设置均设为 L1
- 已启用 RC6(渲染待机)
- 启用积极 LPM 支持 (ALPM)
- 已禁用:高清音频、连接模式、LED、GNA 设备、串行端口
显示输出打开时,功耗为9-10 瓦。
一旦显示器关闭(600 秒计时器的 consoleblank=600 内核启动参数),功耗为7 瓦,而该系统在一周的大部分时间里都处于这个状态。
如果禁用 USB 键盘电源管理,则功耗为8 瓦。如果您不从其他地方通过 SSH 进入服务器,则可能需要花费额外的瓦数来使用键盘。
有问题的功率测量 – 充满旋转的铁锈(旋转停止)
正如开头提到的,我一开始用的是 12 个硬盘。一半是 2.5 英寸,另一半是 3.5 英寸。由于主板只有 4 个 SATA 端口,因此使用 SATA 控制器和端口倍增器来处理剩余的驱动器。此外,早期还使用了 4 个 NVMe 驱动器:其中一个是 Western Digital SN770,即使在空闲时也会变得非常热,这表明它可能不会进入低功耗模式。
所有设备都连接好,处于空闲状态,显示器关闭,12 个驱动器处于待机状态,我惊讶地发现空闲功耗从 7 瓦一路飙升至惊人的 24-25 瓦。太多了!一定有什么地方不对劲。
功耗难题 – 高功率调查和诊断
我断开了硬盘的连接,开始逐个测试组件。这些测试相当粗略,旨在大致了解问题所在,因此这里的数字并不准确。
我很快发现,我使用的 JMB585 SATA 控制器导致功耗增加约 6-10 瓦(后面部分将提供精确测量值)。控制器本身仅需几瓦,而且微型散热器保持低温,因此显然还有更多问题。这些电能都用到哪里了?
我决定观察 CPU 封装 C 状态。如果没有 JMB585 SATA 控制器,系统将达到 C6。当重新连接 JMB585 时,系统达到的最佳状态是 C3。啊哈!但为什么呢?事实证明,如果 PCIE 连接的设备不进入 ASPM L1,CPU 就不会进入深度睡眠。JMB585 控制器卡似乎不支持 ASPM。
进一步的实验发现了一些我不知道的事情,它与 C6 和 C8 有关。只有当没有任何东西连接到与 CPU 相连的 PCIE 通道时,系统才会达到 C8。换句话说,如果任何东西插入顶部 PCIE 插槽或顶部 NVMe 插槽,则 C6 是最大值。在一个简单的测试中,C6 和 C8 之间的功耗差异似乎不到一瓦。
因此,虽然 C8 是一种奢侈,但达到 C6 却是必须的。C3 耗电量太大。如果 SATA 控制器会阻止 CPU 达到最佳省电状态,我开始怀疑我是否应该寻找具有 6-8 个 SATA 端口的主板,这样我就不必依赖附加控制器了……
稍微搜索一下 SATA HBA,发现虽然这里没有太多选择,但 ASM1166 SATA 控制器应该支持 ASPM L1,尽管必须刷新固件才能正常工作(并且完全可以在较新的 Intel 主板上工作)。这是我必须订购的东西:我有 Marvel 和 JMicron 备件,但它们不支持 ASPM。实际上,多年来我一直在避免使用 ASMedia,但出于需要,他们现在又得到了一次机会:我订购了几个 ASM1166 6 端口 SATA 控制器。
附言:BadTLP,糟糕!pcieport 中的 AER 总线错误
值得一提的是……在使用 WD Black SN770 (Gen4 NVMe) 进行初始测试时,我发现使用主(顶部 CPU 连接的) PCIE 和 NVMe 端口时会出现问题。运行 dmesg 导致输出中充斥着以下内容:
pcieport 0000:00:06.0: AER: 收到已更正的错误:0000:02:00.0
nvme 0000:02:00.0: PCIe 总线错误:严重性=已更正,类型=物理层,(接收器 ID)
pcieport 0000:00:06.0: PCIe 总线错误:严重性=已更正,类型=数据链路层,(发送器 ID)
pcieport 0000:00:06.0: AER: 首先报告此代理的错误
nvme 0000:02:00.0: [ 6] BadTLP
…经过多次反复试验后,我发现如果将“PEG – ASPM” BIOS 设置设为 [Disabled] 或 [L0s],则不会出现任何错误。
当然,这是一个糟糕的选择,因为 [L1] 对于省电至关重要。如果使用 [L1] 或 [L0sL1],唯一的选择是将这些端口的链接速度设置为 [Gen3],这虽然不能阻止错误,但可以大大减少错误。
一些研究表明,根本原因可能是多种多样的。因为更换主板或 CPU 并不是一件令人愉快的事情,所以我最好的希望是更换其他品牌的 NVMe。
我订购了一些 Crucial P3 NVMe 硬盘。结果证明这是一次成功的尝试:将 WD 硬盘替换为 Crucial 硬盘后,我不再收到任何错误,但请记住这些是 Gen3 硬盘。
功耗难题 – 发现仅在芯片组连接端口上启用 L1.1 和 L1.2
当我将 2 个 Crucial P3 NVMe 驱动器安装在与 CPU 连接的 PCIEx16 插槽和顶部 M2 插槽中时,我注意到空闲温度比预期的要高。虽然 NAND 处于 27-29C 左右,但控制器报告的温度为 49-50C – 远高于我对这些特定驱动器的预期。
我将一个驱动器从 PCIEx16 插槽移到了与芯片组连接的 PCIEx4 插槽。通过 lspci -vvv 可以看到这两个驱动器之间存在一个有趣的差异:
CPU 连接的 M2 插槽: L1SubCtl1:PCI-PM_L1.2- PCI-PM_L1.1- ASPM_L1.2- ASPM_L1.1-
芯片组连接的 PCIE 插槽: L1SubCtl1:PCI-PM_L1.2+ PCI-PM_L1.1+ ASPM_L1.2+ ASPM_L1.1+
L1 子状态似乎仅在芯片组连接的插槽上启用。不幸的是,但它似乎与上面屏幕截图中可用的 BIOS 设置相吻合。
让我们再次参考该主板图片来显示情况:
我将两个 NVMe 驱动器都放在与芯片组连接的 PCIE 插槽上。现在两者都显示 L1.1+/L1.2+,并且两个控制器温度都从 49-50C 范围降至 38-41C。
不幸的是,当尝试使用这两个具有不同插槽配置和各种 BIOS 设置的 Crucial NVMe 硬盘进行各种 A/B 测试时,我发现温度方面的行为非常不一致,但值得注意的是,在这些测试期间还连接了 JMB585 和 NVMe 启动硬盘。例如,两个硬盘可能在 40C 左右空闲,直到软重启,此时 1 个(或两个)硬盘现在可能在 50C 范围内空闲。有时似乎可以将 1 个硬盘放在与 CPU 连接的 M.2 上,并在 x16 插槽未填充的情况下将两个硬盘的温度保持在 40C。大概是我遇到了某种错误。无论 Crucial NVMe 硬盘发生什么情况,三星启动 NVMe 似乎都保持一致的空闲温度,因此我怀疑 Crucial 硬盘本身至少要承担部分责任。
有趣的是,有时一个(或两个)控制器的温度在芯片组连接的插槽上会一直下降到 29C 范围。由于试图找到 Crucial P3 的低功耗 4TB NVMe 替代品并不是一个现实的目标,我目前最大的希望是 ASPM 不兼容的 JMicron JMB 585 在某种程度上是罪魁祸首,因为它很快就会被 ASPM 兼容的 ASMedia ASM 1166 取代。
最新更新:遗憾的是,我没有在其余测试中跟踪温度,驱动器之间的散热器/气流都乱七八糟。但无论如何,在最终版本中,我的 Crucial P3 控制器温度为 31-34C,NAND 温度为 23-24C。
功耗难题——从 JMB585 交换到 ASM1166。
几周后,ASM1166 到货了。首先介绍一些有关该卡的信息,如果您正在考虑购买,这些信息可能会对您有所帮助……
我从固件刷新开始 – ASM1166 卡通常使用旧固件,无法与 Intel 600 系列主板配合使用,而且据我所知,可能存在电源管理问题。较新的固件可以在各个地方找到,但我决定从 SilverStone 获取一份副本(https://www.silverstonetek.com/en/product/info/expansion-cards/ECS06/下载部分中的“修复兼容性问题”)并按照https://docs.phil-barker.com/posts/upgrading-ASM1166-firmware-for-unraid/上的说明进行操作。请注意,SilverStone 文件的 MD5 与我通过关注https://forums.unraid.net/topic/102010-recommended-controllers-for-unraid/page/8/#comment-1185707上的主题找到的固件相同。
对于任何计划购买 ASMedia 卡的人,我应该指出,与市面上的大多数 SATA 控制器和 HBA 一样,质量确实参差不齐。我的一张卡的散热器有点歪了:导热垫足够厚,可以防止它短路附近的组件,但请注意,这些产品的质量可能真的参差不齐。在这种情况下,多花一点钱从退货政策良好的地方购买是明智之举。
我做了相当多的 A/B 测试,因此这里简要地比较了“JMicron JMB585 与 ASMedia ASM1166”在总系统功耗方面的差异,尽管它可能仅适用于这个平台(或者甚至可能是这个特定的主板)。
无存储驱动器
首先,在没有任何驱动器连接到卡的情况下(SATA SSD 启动驱动器连接到主板)测量功耗,以获得基准。除键盘外,所有设备均使用 PowerTOP(增加 +1 瓦)。显示输出进入睡眠状态后进行测量。
- 8 瓦 – 无 SATA 控制器 – C8 电源状态
- 9 瓦 – ASM1166 位于芯片组连接的 x4 插槽上 – C8 电源状态
- 12 瓦 – JMB585 位于与 CPU 连接的 x16 插槽上 – C3 电源状态
- 15 瓦 – JMB585 位于芯片组连接的 x4 插槽上 – C3 电源状态
- 22 瓦 – ASM1166 位于与 CPU 连接的 x16 插槽上 – C2 电源状态
如果将 ASM1166 插入芯片组连接的插槽(仅 +1 瓦),则表现良好,但如果连接到主 PCI-E 插槽(+14 瓦),则表现会很糟糕,此时 CPU 封装功率状态会骤降至 C2。令人震惊的是,JMB585 的表现则相反,其功耗在 CPU 连接的插槽上较低(并且不会导致 C2)——但是,您很快就会发现,当驱动器实际连接时,情况会发生变化……
我对控制器进行了额外的测试,包括使用几个 NVMe 驱动器玩“抢椅子”游戏,看看多个设备是否会对事情造成影响,但没有发生任何意外,所以我将跳过这些细节。
添加一些存储驱动器
完成基线测量后,接下来是时候将一些驱动器实际放在这些控制器上。SATA SSD 启动驱动器留在主板上,2 个 NVMe 驱动器被添加到组合中(除非另有说明,否则与芯片组连接),4 个 2.5 英寸 SATA 硬盘驱动器被放置在控制器上。我将列出硬盘驱动器进入待机状态后的“旋转减速”消耗 – 在驱动器空闲时,“旋转加速”在每次测试中都恰好高出 2 瓦。
- 10 瓦 – ASM1166 位于芯片组连接的 x4 插槽上 – C8 电源状态
- 11 瓦 – ASM1166 位于芯片组连接的 x4 插槽上,1 个 NVMe 移至 CPU 连接的 x16 插槽 – C6 电源状态
- 11 瓦 – 2x ASM1166 位于芯片组连接的 x4 插槽上,仅配备 1 个 NVMe 驱动器 – C8 电源状态
- 16 瓦 – JMB585 位于芯片组连接的 x4 插槽上 – C3 电源状态
- 24 瓦 – JMB585 位于与 CPU 连接的 x16 插槽上 – C2 电源状态
通过芯片组连接插槽连接 4 个驱动器时,ASM1166 会使系统功耗增加 2 瓦,而 JMB585 则会增加 8 瓦。没有争议。
另外一个好处是,我能够在系统中使用两个ASM1166 卡,而尝试同时使用两个 JMB575 卡则导致系统拒绝启动,但这可能是平台或主板特定的问题。
不过,这其中也有一个权衡——我一直认为 JMB585 非常可靠,包括与 JMB575 端口倍增器搭配使用时。我过去使用 ASMedia SATA 控制器的经验并不尽如人意:ASM1166 的可靠性还有待观察,但至少它不适合用作端口倍增器,因为它不支持 FBS(仅支持 CBS)。
ASM1166 还存在其他一些小问题:
- 移除/重新插入 NVMe 启动驱动器时,BIOS 消息显示由于 GPT 损坏无法启动。必须暂时移除 ASM1166 卡,以便 BIOS 再次“找到”NVMe 启动驱动器(之后可以重新安装)。
- ASM1166 卡声称拥有*大量*端口——这会导致额外的启动时间,因为 Linux 必须遍历所有端口。
更新:SATA 和 SSD 品牌
其中一条评论提到,较旧的三星 840 PRO SSD 限制为 C3,而 Crucial Force GT SSD 允许 C8。虽然这些都是较旧的驱动器,但我仍然觉得这有点令人惊讶。值得调查一下。
我使用 H770 作为测试平台,使用三星 850 EVO SATA SSD 启动驱动器以及 Crucial P3 NVMe,并构建了一个自定义内核,使 Realtek 网络适配器能够达到 L1.2。没有 ASM1166,只使用英特尔板载 SATA。在运行带有自动调谐的 powertop 并让显示器进入睡眠状态后,我达到了 C10。我尝试了手头上各种驱动器,每次都关闭系统以更换驱动器并重复该过程。结果如下。
导致系统卡在 C6 的驱动器:
- 1TB 爱国者 P210 SATA 固态硬盘
允许 C10 的驱动器:
- 500GB 三星 850 EVO SATA SSD
- 4TB 2.5 英寸希捷 SATA 硬盘
- 8TB 3.5 英寸希捷 SATA 硬盘
- 14TB 东芝 SATA 硬盘
- 1TB Sandisk Ultra 3D SATA SSD
- 4TB Sandisk Ultra 3D SATA SSD(注:缓慢修整)
- 4TB Crucial MX500
我建议在选择 SATA SSD 品牌和型号时要谨慎。我会尝试使用我测试过的驱动器随时更新此列表,但请记住,存储领域的某些制造商倾向于默默地将他们的一些主线产品换成劣质组件,因此您应该在退货期限内始终验证您购买的任何存储设备的声称性能指标。欢迎留下评论,说明您遇到的好/坏驱动器。
功耗难题——结论
如果追求低消耗,有几点很重要:
1) 主板支持和 BIOS 配置至关重要 – 我曾有过 BIOS 非常不灵活的主板。对于这款主板,必须启用“本机 ASPM”和适当的 L1 状态(以允许 OS 控制而不是 BIOS 控制)才能实现低功耗。
2) 所有设备都需要支持 ASPM L1。否则您就真的要冒险了。您可能已经猜到了,这里最难的部分是找到支持它的 SATA 控制器——如果可能的话,让主板有足够的 Intel 芯片组连接的 SATA 端口,以避免需要单独的卡。我应该指出,找到在 ASPM 下具有工作低功耗 APST 电源状态的 NVMe 驱动器并不总是可行的,您也需要在那里做一些研究。
3) 如果您可以达到 C8 电源状态,请避免使用与 CPU 相连的 PCIe 通道(顶部 PCIe 和 M2 插槽)。在此特定主板上,我的建议是尽可能避免使用它们,除非您需要低延迟全带宽路径到 CPU,或者您的设备非常活跃,它们永远不会休眠。回想一下,如果将我的 JMicron 和 ASMedia SATA 卡插入 x16 PCI-E 插槽,它们都会导致 CPU 封装 C 状态下降到 C2。
4) 测量墙上的功率是确保您所想的事情确实发生的唯一方法。如果您使用 Kill-A-Watt 设备,它会随着时间的推移而收回成本——想想我在 2006 年购买的(当时通过 eBay 购买了 16 美元 + 14 美元运费)。当时我发现我们很少使用的传真机总是开着,耗电量为 7 瓦……在接下来的 10 年里,只要在不使用时让该设备处于关闭状态,就比购买 Kill-A-Watt 的费用还要高。
装载大量 HDD 时的功耗
现在,各种部件已经在此过程中移入和移出系统,当前设置如下:
- 1 个三星 970 EVO Plus NVMe(500GB 启动驱动器)
- 2 个 Crucial P3 NVMe(各 4TB)
- 5 个 Seagate 2.5 英寸硬盘 (每个 5TB – 使用 4TB)
- 6x Seagate 3.5 英寸硬盘 (每个 10TB – 已使用 8TB)
- 2 个 ASM1166 卡,提供 SATA 端口
从墙上测量的总功率(显示屏开启,键盘启用):
- 所有 11 个硬盘处于活动-空闲状态时,功耗为 50 瓦
- 空闲 B 中 6 个 3.5 英寸硬盘的功耗为 38 瓦
- 空闲 C 中 6 个 3.5 英寸硬盘的功耗为 34 瓦
- 6 个 3.5 英寸硬盘处于 Standby_Z 状态(旋转停止),功耗为 21 瓦
- 5 个 2.5 英寸硬盘处于待机状态时功耗为 18 瓦
- 显示输出也关闭时为 16 瓦
- 当 PowerTOP 允许禁用 USB 键盘时,功耗为 15 瓦
Seagate 将这些 3.5 英寸硬盘的待机功耗定为每块约 0.8w,将 2.5 英寸硬盘的待机功耗定为每块约 0.18w。这与我上面看到的情况一致。我的活动-空闲数字实际上也与 Seagate 规格非常吻合。
显而易见的观察是:与系统的其他组件相比,3.5 英寸驱动器是耗电大户。
HDD 最终将被 SSD 取代。由于 HDD 待机期间的闲置功耗很低,因此不会出现太大问题,而且随着我的 HDD 驱动器/备用驱动器出现故障以及 SSD 价格下降,这一过程将逐渐发生。
“最终计划”是全固态硬盘构建。最初的计划是 1 个启动驱动器、6 个 NVMe(可能是 Crucial P3 4TB)用于 RAIDZ2 阵列,以及 6 个 SATA(可能是 Samsung 870 QVO 8TB)用于第二个 RAIDZ2 阵列。由于使用与 CPU 连接的 M2/PCIe 插槽不仅会带来不可预测性,而且还会带来轻微的 C 状态/功率/温度成本,因此我可能会改变该计划,在第一个阵列中放弃几个 NVMe,而改用 SATA,这样我就不必接触与 CPU 连接的通道。时间会证明一切。
不必要的存储细节
如果您对存储的详细细节感兴趣,则本部分值得一读。否则,请随意跳到最后一节。
NVMe 启动驱动器
如前所述,这是三星 970 EVO Plus。目前,500GB 空间中只有不到 4GB 被使用(存在 64GB 交换分区,但始终处于 0 使用状态)。最初之所以选择它,是因为三星在可靠性方面享有盛誉(最近已逐渐消失),而且三星在每次空闲功耗方面的评测中也得分很高。此驱动器几乎始终处于空闲状态,并且控制器和 NAND 温度在整个测试过程中都保持在较低水平(20-24C)。它最终可能会被交换为 SATA SSD 以释放 NVMe 端口。
2.5英寸硬盘
这些驱动器用于主 6 驱动器 ZFS RAIDZ2 阵列 – 使用率最高的阵列。每周有一天,它会忙于一项任务,即在 24 小时内读取几 TB 的数据。一周中其余时间的使用情况不定,驱动器在一周的大部分时间里都处于停转状态。如果有人想知道为什么使用 2.5 英寸驱动器而不是 3.5 英寸驱动器,那肯定是有原因的:功耗。
2.5 英寸 Seagate 硬盘的功耗确实相当惊人。转速降低时,它们的额定功率为 0.18w,低功率空闲时,它们的额定功率为 0.85w,平均读写功率约为 2w。市面上有很多 SSD 的功耗数字比这款旋转硬盘更差。5TB 容量的每瓦存储量非常大。
这些 2.5 英寸 Seagate 硬盘的主要缺点是:
- 性能不是很好。峰值读取/写入速度为 80-120MB/s。公平地说,许多 TLC/QLC SSD 在 SLC 缓存耗尽时会降至这些写入水平。
- SMR(叠瓦式磁记录)。读取性能很好,但当发生随机写入时,写入性能绝对会下降——它就像没有 SLC 缓存且没有 TRIM 的 QLC SSD。
- 额定工作负载较低(55 TB/年,而 3.5 英寸 Exos 硬盘为 550 TB/年)。
- 没有可配置的错误恢复时间 (SCT ERC),如果这些驱动器在不断尝试重新读取有问题的扇区时遇到错误,它们可能会挂起几分钟。Ubuntu 需要配置为等待,而不是在 30 秒后尝试重置驱动器。
- 如果它们变热,错误率会更高(我不得不更换几个,而且发现它们不喜欢变热)。
- 典型的 HDD 痛点(旋转缓慢等)。
公平地说,希捷的产品是作为外部 USB 备份驱动器出售的。将这些 15 毫米高的驱动器从机箱中取出并将它们用作 NAS 中的 RAID 成员并不是按预期使用它们。超低功耗非常出色,但也有明显的缺点。
从长远来看,这些 2.5 英寸 4/5TB 硬盘将逐渐被 4TB SSD 硬盘(可能全部为 NVMe)取代。4TB 容量的 SSD 于 2021/2022 年开始在消费者端上市,价格约为旋转硬盘的 4-5 倍。不到两年后,它们的价格已降至约 2 倍,我预计优质品牌的使用寿命将是 Seagate 旋转硬盘的 2 倍以上。
如果 Crucial P3 (Gen3) 型号仍然有货,我可能会继续使用这款型号,尽管速度受限于 Gen3。我强烈考虑过 Crucial P3 Plus (Gen4),但评论中的功耗更高,尽管在极少数情况下性能也明显更高。我对 P3 Plus (Gen4) 最大的担忧是,如果我遇到 ASPM/APST 问题,Tom’s Hardware 显示 2TB 型号的空闲功率比 P3 (Gen3) 高 0.3w。我希望“最坏情况”的功率尽可能低。
3.5 英寸硬盘
用于辅助 6 驱动器 RAIDZ2 阵列 – 一个备份阵列,每周运行约 2 小时,并持续接收大量写入操作。
3.5 英寸 Seagate 硬盘的功耗与预期差不多。这些 10TB 硬盘的待机功耗约为 0.8w,空闲功耗为 2-5w,读写功耗为 6-9w。
这里有两个问题:
- 这些设备在写入时的总功率约为 45-50 瓦。如果在备份期间发生长时间断电,那么这会增加一点 UPS 负载,我并不想要(我坚持使用消费级 1500 瓦 UPS)。
- 这些设备在待机状态下的额定总功耗约为 4.8 瓦。同样,我不介意减少一些 UPS 负载。
从长远来看,这些硬盘很可能会被三星 870 QVO 8TB SATA 硬盘取代。870 QVO 在启用 ALPM 的情况下的闲置功耗为 0.041w/0.046w,在未启用 ALPM 的情况下的闲置功耗为 0.224w/0.229w,在复制期间的功耗为 2.0-2.7w(根据 Toms/Anandtech 的数据)。
价格方面,三星 8TB SATA SSD 目前比 8TB 旋转式硬盘贵很多(接近 3 倍成本),所以除非这些驱动器由于某种原因开始更频繁地使用,否则几乎肯定会等到我用完备件后才使用 SSD 进行更换。
NVMe 缓存驱动器
用固态硬盘 (SSD) 替换旋转生锈的硬盘是一个可能需要一段时间的过程。
与此同时,ZFS 有几个选项可以在较慢的存储前面使用高速存储(通常是 SSD):
- “特殊”分配类——允许您根据需要为元数据和“小”块创建专门的 vdev。
- 缓存驱动器,通常称为 L2ARC。
如果您在创建池时创建“特殊”vdev,则所有元数据(以及可选的您选择的大小的小块)都将放在“特殊”vdev 上,而不是旋转的 rust。非常快速的文件列表和目录遍历,同时保持文件本身的旋转 rust。是的,您可以“ls”一堆目录,而无需唤醒睡眠中的 HDD。最大的缺点是,由于所有元数据都位于此 vdev 上,如果它死机,则基本上无法访问所有数据。所以它真的应该至少镜像。甚至可能是三向镜像。告别一些端口。
L2ARC 略有不同。它本质上是 2 级缓存。当 RAM 中的缓存已满时,ZFS 会将一些块复制到 L2ARC,然后再从 RAM 中移出这些内容。下次需要访问这些数据时,将从 L2ARC 而不是磁盘读取。与“特殊”vdev 相比,一个好处是,只需 1 个 SSD 即可 – 如果 L2ARC 中的数据有问题(校验和错误、驱动器损坏等),ZFS 将只从原始磁盘读取内容。此外,一旦 L2ARC 已满,ZFS 将从 L2ARC SSD 的开头重新启动并覆盖之前写入的内容,这有一些优点(旧数据再也不会访问)和缺点(经常访问的数据需要再次写入 L2ARC)。您还可以在空闲时从池中添加/删除 L2ARC 设备 – 想要添加 64GB SSD、500GB SSD 和 2TB SSD?继续吧——ZFS 将在它们之间分配块。几天后需要从池中移除 500GB SSD 并在其他地方使用它吗?继续吧。L2ARC 的最大缺点是,如果您在添加设备时忘记指定“缓存”,您可能会弄乱您的池。它也是不完美的:即使经过仔细的调整,也很难让 ZFS 在 L2ARC 从内存中逐出之前将您想要的所有内容写入 L2ARC。同时,根据您的数据,L2ARC 可能会看到大量写入,您可能必须仔细观察 SSD 的健康状况。
过去我使用过“特殊”、使用过 L2ARC,并且同时使用过两者(您甚至可以告诉 L2ARC 不要缓存“特殊”vdev 中已经包含的内容)。
这次我只是在 4TB NVMe 上使用了 L2ARC:一旦所有其他 2.5 英寸驱动器都被 SSD 替换,并且 SSD 缓存的速度优势不再适用,我就可以简单地移除这个缓存设备(虽然理论上有 1 个 L2ARC 缓存驱动器处理大量读取*将*允许其他 NVMe 驱动器更多地保持在低功耗模式……)。
结论 – 后悔?事后反思?有什么可能有所不同?
与ASRock J4005 的构建不同,在构建过程中我意识到自己在很多方面都受到了限制,而这次我并没有得到同样的感觉。这次我最终获得了较低的空闲功率和一个相当强大的系统,即使将来重新使用它也应该具有灵活性。
我对自己选择的组件非常满意,但我很想知道 MSI PRO Z790-P DDR4(我考虑过的另一款主板之一)相比之下表现如何。功能方面,MSI 具有 6xSATA 端口的优势,但它也存在明显的缺点,即臭名昭著的英特尔 2.5G 网络芯片。MSI 还有一个 PS/2 端口,我从未真正检查过 PS/2 键盘的功耗是否低于 USB(回想一下,如果我允许 powertop 关闭 USB 键盘端口,我可以节省 1 瓦)。当然,比较 ASPM 和 ALPM 设置会很有趣,看看我遇到的与 CPU 连接的 PCIe/M.2 插槽相同的问题是否存在。
虽然该系统在驱动器处于待机状态时,当前功耗在 15-16 瓦范围内,但一旦所有 HDD 都替换为 SSD,我预计空闲功耗将在 10-11 瓦左右,对于价值 72TB 的驱动器、64GB 的 RAM 和相当不错的处理器来说,这还不错。
更新:最近的 Linux 内核禁用了大多数 Realtek NIC 的 L1 省电模式,这会导致 CPU 无法进入良好的 C 状态,从而大大增加功耗。虽然有解决方法,但今后我可能会将自己限制在包含 Intel 1 Gigabit 网络适配器的主板上(当发现他们已经解决了所有问题时,也许会转向 Intel 2.5 Gigabit)。您可以在下面的评论中找到有关 Realtek NIC 情况的更多详细信息。
我想如果你找到一个带有更多 sata 端口的板子,很多麻烦是可以避免的!
就我而言,我从未设法让我的芯片超过 C3。我有意尝试减少多余组件的数量(就像那些 SATA 控制器一样,我读过关于它们可能有多成功和错过的信息)。
我将仔细检查我的 BIOS 设置,以确保我已经启用了您在文章中提到的所有相关内容。
文章很有意思,非常感谢。
有些人说ECC对于始终在线的服务器来说是必须的,尤其是使用ZFS时。
此外,NVME似乎比SSD消耗更多的燃料。
我正在寻找一款省电的ECC主板,但还没有找到,W680主板很难买到。
与此同时,我在J5040 Asrock主板上运行Unraid,其中两个1TB SSD处于镜像状态,三个WD机械硬盘大部分时间处于休眠状态。
系统空闲时耗电19瓦,在添加Asmedia控制器(4)之前为16-17瓦(C6)。我很快就会用Corsair替换旧的seasonic电源。
问候
Geert
请记住,如果第二个M.2插槽被占用,6个SATA端口中只有5个可以工作。如果我没记错的话,H470M DS3H的BIOS还隐藏了一些选项(例如强制IGPU或专用GPU),除非将其置于CSM模式。此外,如果安装了LSI SAS HBA,它会在启动屏幕上随机挂起并显示错误,需要再次尝试重启——常规SATA控制器则工作正常。抛开这些奇怪的小细节,我发现它非常可靠,而且运行良好,我很喜欢这款主板。
您是否计划发表类似的文章,但针对支持ECC且空闲功耗低且仍与Linux兼容的系统(我认为AMD的低空闲功耗并不适合Linux)。
我打算尽快自己动手制作这样的系统,我想知道我是否应该在未来一两个月内开始制作,还是应该再等一段时间,看看您的文章,它们会提供一些有用的信息,帮助我更好地选择组件。
无论如何,非常感谢您写得如此详尽的文章。您出色地强调了构建高效低功耗NAS的重要部分。
我还买了一个970 Evo Plus(2TB)作为启动盘,可以确认它必须连接到芯片组才能达到低封装C状态(C8)。我发现有趣的是,当SSD连接到芯片组时,C3和C8之间的差异要大得多。我认为这是因为只有当所有连接的设备都支持ASPM且SATA链路电源管理处于活动状态时,芯片组本身才会进入深度睡眠状态。
将SSD连接到CPU PCIe只会增加约2W的功耗(封装C3与C8),而连接到芯片组的设备上没有ASPM似乎仅对芯片组增加了5W的功耗,但对封装C-State也有相同的效果(C3)。
值得注意的是,我有一张PCIe 1.1 DVB-C采集卡连接到芯片组上。尽管lspci将ASPM列为该卡的功能,并且我使用pcie_aspm=force引导内核,但该卡并未启用ASPM。我不得不通过setpci强制启用ASPM,请参阅 https://wireless.wiki.kernel.org/en/users/documentation/aspm ——似乎可以正常工作。这帮助我达到了15W的待机功率。不幸的是,采集卡仍然需要约5W的功率,否则我目前只连接了东芝的2x4TB硬盘,它们在空闲时会停止旋转。
顺便说一下,必须关闭所有端口的Sata热插拔功能,否则系统只能运行到C6。
文章太棒了,感谢提供的所有信息。
我打算组装我的nas。由于功耗是主要问题,您对以下配置有何看法(我对系统以及这种低tdp芯片的可能性和/或局限性不太了解)?
Asrock N100M micro ATX(配备新的英特尔®四核处理器N100(最高3.4 GHz),热设计功耗为6W。由于只有2个SATA端口,因此打算在1个PCIe 3.0 x16插槽上添加一个SAS HBA卡,该卡带有8个附加的SATA端口。对于存储,TrueNas操作系统需要1个M2(来自主板),虚拟机、Docker等需要2个SSD镜像sata,最后一步需要8个Seagate EXO 7200 rpm硬盘(开始时需要2个,然后根据需要增加)。
电源方面,我们选用了 Seasonic Focus PX 550W - Modular 80+ Platinum ATX,最后还配备了一块独特的 32GB 内存条(非 ECC)。
在此先感谢大家
在SAS HBA卡上,我建议看看其他人在你考虑的特定卡上看到的空闲功耗:流行的卡通常在完全没有任何操作的情况下消耗几瓦。不确定*BSD如何处理这些卡,但在少数似乎默认启用ASPM的卡中,Linux最终似乎会在某个时候由于问题而在内核中禁用它。也就是说,在这种情况下,华擎N100的表现可能会比单独的CPU/主板组合更好,因为我对它对扩展卡c-state影响的敏感性有所期待,尽管这只是基于我在华擎J4x05主板上的观察,可能并不适用于N100。
Seasonic PX 550W看起来是个不错的选择。
整体看起来非常坚固!
您有什么建议,能帮助我识别低功耗的主板吗? 人们有时会推荐ITX主板,但我没有找到任何关于ITX和ATX通常能节省多少瓦特的测量数据。 现在,ITX不适合这台机器,但无论如何,ATX似乎也不是功耗的主要来源。 总的来说,似乎很难判断哪些主板节能,哪些不节能?
您所说的"E-core硅开销"是什么意思?为什么您要尽量避免它?我理解带有E-core的CPU可能更复杂,但我认为当CPU在低负载下执行非密集型任务时,E-core可以降低功耗。
再次感谢您的宝贵信息。我希望能够构建一个具有类似能效的系统。目前,我有一块技嘉Z790 UD AX主板和一个i5-13500系统,但功耗无法低于28W。
ITX的优势在于它倾向于限制组件数量,但这不是绝对必要的——上周,我实际上重新调整了开头提到的"Intel i3-10320 on a Gigabyte H470M DS3H"的用途,使其空闲功耗降至 空闲时功耗为6瓦(无头,无键盘,仅使用板载Intel i219V 1GbE网络,BIOS中的c-state,3个三星SATA SSD 840/860/870,Corsair RM850电源,Ubuntu Server with powertop)。这是一块非常实用的主板。我不会单独写一篇文章,因为这块主板已经停产了,但在这篇文章中,微ATX技嘉H470主板上的6瓦和ATX华硕H770主板上的7瓦是我目前最好的2个结果,值得注意的是,它们都不是ITX主板。我刚刚注意到另一件事:这两块主板只有6个功率相位。
关于"E-core硅片开销",很多细节都可以在 https://www.hwcooling.net/en/the-same-and-yet-different-intel-core-i5-12400-duel-h0-vs-c0/ 上找到,但我还是试着总结一下。i5-12400配备6个P-core和0个E-core,通常称为6+0。然而,它有2个变体:一个"C0"步进, 最初是8+8,通过核融合变成6+0,而"H0"步进则直接生产为6+0,从一开始就没有任何E核硬件。在测试中(文章第5页),C0比H0多消耗16瓦的功率,具体取决于基准,包括怠速时多消耗近11瓦。现在,他们的C0样品可能存在其他导致功率泄漏的问题,或者还有其他变量在起作用,但无论如何,内置E-Cores硬件的2个芯片在怠速测试中表现不佳。
由于我关注大多数系统的极低空载功耗,在看到E-core芯片的空载功耗低于10瓦特的数据之前,我不能证明购买任何组合的P/E-core芯片是合理的。而我还没有看到这样的数据。这是英特尔目前面临巨大威胁的一个领域:AMD迷你PC的Ryzen 9 7940HS( https://youtu.be/l3Vaz7S3 HmQ?t=610 ),如果AMD将这种类型的APU设计引入台式机领域,或者像ASRock这样的公司开始将一些令人印象深刻的HS芯片封装在定制的主板中,英特尔可能会迅速失去低空闲功耗市场。
话虽如此,即使您的主板有很多低效的MOSFET,除非您有旋转的锈蚀或耗电的PCIe卡,否则您所说的28瓦功耗似乎有点高。您检查过是否达到了C6或更高的功率状态吗? 回想一下,当我把ASM1166放在主PCIe插槽上时,只能达到C2状态,功耗为22瓦。
您说的没错,我分享的28 W功率确实不够。我犯了一个错误,以为拔掉硬盘的SATA线缆就能让它们断电。但事后看来,您还需要从电源插座上拔下硬盘线缆。此外,我还连接了一堆外设到电脑上,但没想到它们也会消耗电力(尤其是插入的显示器,影响很大)。断开所有硬盘和所有外设后,我得到的读数在8-10W之间。
为了给其他人提供有用的数据,我将分享一些细节。CPU是技嘉Z790 UD AX主板上的i5-13500。唯一连接的是SATA SSD和一块内存条。PSU是850W的Corsair RM850x。系统可以达到C8甚至C10。还可以做些事情来减少功耗。我在GNOME中空转时进行了测量(我认为不运行任何DE可以节省一点CPU),我有两个CPU风扇,即使在低温下也运行缓慢,系统处于WiFi状态(我认为以太网消耗的功率更少),而且我没有禁用机箱LED和高清音频。
我对功耗水平非常满意。也许,有一点可以肯定的是,英特尔E-core对空闲功耗的影响不大,至少在这个CPU上是这样。我现在唯一的问题是系统不稳定,偶尔会重启😭。我认为问题出在CPU或主板故障上(我尝试过更换电源,memtest86+显示内存没有问题)。我购买零件的公司声称这两者都很好,但除非我找到其他解决方案,否则我会尝试用一些低端零件更换CPU和主板:第13代i3和华硕B760M-A主板。如果这样能解决问题,我希望我能退回其他零件,最坏的情况是,我会用预算内的零件来组装服务器,用高端零件来组装工作站。
我尝试了所有设置,一旦启用c8/10,系统就会变得不稳定并在某个时候关闭,我检查了所有驱动器和电缆,更换了两次电源,目前正在等待英特尔的CPU RMA。从这条帖子来看,这似乎是一个技嘉主板的问题,我也尝试了不同的BIOS固件,但都没有用,所以看来如果CPU RMA不能解决问题,那就是技嘉z790主板的问题了。
这确实令人失望,因为我已经过了退货期限,而且真的不想与技嘉RMA打交道,所以如果CPU RMA不起作用,我只能忍受它,或者卖掉它,买一块不同的主板。
由于这个话题有点旧(2023年12月),我想知道是否还有其他人遇到过这个问题并解决了。
谢谢。
我目前正在测试华硕TUF GAMING B760M-PLUS WIFI D4(12+1个DrMos),在空闲状态下,显示器和USB(鼠标、键盘)暂停,功率计显示6.7-8.1 W。系统的其余部分:
- i5 13500
- 2 x 16 GB 3600 MHz (gear 1)
- 1 TB KC 3000
- RM550x 2021
- 2 x 120 mm fans @ 450 rpm
- audio codec on
- WiFi off
Arch Linux + RTL8125模块(我的路由器不支持EEE)
禁用Realtek卡后,功率计显示6.4-6.7 W
PC states w/ LAN
C2 (pc2) 0,7%
C3 (pc3) 1,3%
C6 (pc6) 41,1%
C7 (pc7) 0,0%
C8 (pc8) 0,0%
C9 (pc9) 0,0%
C10 (pc10) 55,8%
PC states w/o LAN
C2 (pc2) 0,6%
C3 (pc3) 0,9%
C6 (pc6) 0,0%
C7 (pc7) 0,0%
C8 (pc8) 0,0%
C9 (pc9) 0,0%
C10 (pc10) 97,8%
我在B660 AORUS MASTER DDR4(16+1+1)上获得了类似的结果。
我想分享我使用12-14瓦新电脑的经验。
我刚组装了一台无风扇mini-ITX电脑。机箱也是被动式散热器——AKASA Maxwell Pro,内部是AMD Ryzen 5600G(Zen 3,65W TDP)、技嘉B550I AORUS PRO AX(BIOS FB)、1x 16GB DDR4(我计划升级到2x32GB)、1x 2TB Samsung 980Pro m.2 SSD。它由AKASA的12V AC/DC电源(最大功率150W)和Inter-Tech MINI-ITX PSU 160 W供电。
在Windows 10下,整个电脑的待机功耗为12-14W(在直流侧测量,电源计划是平衡的,但我在BIOS中启用了ASPM、Pstates和C-states,在Windows电源计划的高级设置中启用了PCIe省电功能)。
在负载下(Cinebench R23)为61-65W。目前,我正在降低电压,以获得更好的功耗和温度。
-----
我的小型家庭实验室和NAS的闲置功耗不到2W ‼️
我推荐Odroid H3(H3+),BIOS版本为1.11,Debian 11 + DietPi + 内核6.0.0(或更新版本),并通过powertop应用调整,其闲置功耗仅为 1.2 - 1.5W(相比之下,RPi 4为2.7W——来源)⚡️(我的配置为:1x 16GB RAM和1x SATA SSD)。
参见: https://i.ibb.co/7QD390m/H3-1-10-6-0-0-sata-idle.gif
最大内存容量为64GB RAM,它具有1个m.2端口、2个SATA 3和2个LAN 2.5Gbps。它比Raspberry Pi 4快得多,空闲时的功耗更低。在负载下,它可能消耗20W(+取决于连接的设备)。
如果您需要更多的SATA端口,那么可以使用以下链接将m.2端口扩展为5个SATA端口: https://wiki.odroid.com/odroid-h3/application_note/m.2_to_sata_adapter
我目前正在努力让我的新NAS在没有数据驱动器的情况下空闲时功耗低于40W,但我始终不明白为什么它要消耗这么多电量。我的游戏台式机空闲时的功耗更低。
这是一台Asrock H670M-ITX/ac,搭载i3-12100、8GB内存和be quiet 400W电源。最初使用金士顿NV2 NVMe作为操作系统,但发现换成SATA SSD后空闲功耗降低了约10W(50W - > 40W)。
根据 powertop 的说法,内核进入 C7 没有问题,但程序包拒绝离开 C2。不确定这有多重要。
我会继续努力,以您的文章作为参考。:)
Matt,
你的文章给了我启发,所以我购买了同样的主板(prime h770 plus d4)和类似的处理器等。我能够达到最低12-14w。目前我很满意,但额外的8w是由于软件包不再达到c8,这让我非常沮丧,在你的构建中看到过类似的情况吗?
遗憾的是,这是对内核中Realtek驱动程序的有意更改。它确保几乎在所有Realtek适配器上禁用L1,这似乎是为了应对启用低功耗状态时许多Realtek适配器出现稳定性问题的情况。在我当前的测试系统中,由于系统不再进入C3状态,因此屏幕处于休眠状态,空闲时的功耗增加了4瓦。
尝试Tseting链接的Realtek驱动程序可能是目前最简单的解决方法,尽管我不知道它在不支持的内核版本上表现如何,而且我个人也不是内核模块的忠实粉丝。为了方便起见,我把它粘贴在这里: https://www.realtek.com/en/component/zoo/category/network-interface-controllers-10-100-1000m-gigabit-ethernet-pci-express-software
当然,还有一个更难的变通方法——对于那些熟悉编译内核的人来说,恢复上面的差异中的更改将恢复RTL8168h/8111h、RTL8107e、RTL8168ep/8111ep、RTL8168 fp/RTL8117和RTL8125A/B设备(任何更早的设备都已禁用)——如果您想启用L1.2,可以强制rtl_aspm_is_safe()返回true,但在我的测试系统中,它并没有比L1.1提供任何好处。
除非内核开发者改变主意,否则英特尔网卡似乎是唯一可行的选择。英特尔1G网卡通常非常稳定。令人担忧的是,我发现禁用MSI主板上的Realtek网卡并不能完全断开它(仍然停留在C3),因此购买带有Realtek网卡的板子并计划禁用它并使用英特尔网络扩展卡可能存在风险。值得注意的是,今后供应商可以在8125A/B适配器上设置一个标志,表明L1.2已经过测试并允许使用,而Linux内核也会遵守这一标志,但我不知道它是否已经应用到任何主板或扩展卡中。
感谢你分享的详细信息。
你的设置给了我很多启发,我已经购买了"Prime h770-plus",包括4800 DDR内存。
不幸的是,当在BIOS中启用ASPM(和PCI Express时钟门控)时,NVME SSD也会出现问题。禁用WD的某些省电模式的解决方法没有用。试用了SN750(1tb)和SN850X(2tb)。
您还能推荐Crucial P3吗?它是否也会因ASPM问题而经常出现故障?
在启用ASPM的情况下,还有哪些NVME能够稳定运行?
您是否在连续运行中高效地运行了设置?
此外,我发现至少在SATA1上,840pro(256GB)可以防止系统低于C3。而Cruisal Force GT(128GB)则可以运行到C8。
我通过取消内核中的检查解决了Realtek NIC的问题。
谢谢,祝好
"如果你能找到一块板子,上面有多个SATA端口,我想很多麻烦都可以避免!"
这并非默认情况——因为这取决于使用的SATA控制器和/或这些端口的连接方式。很有可能使用的是板载控制器,特别是对于N5105,Kingnovy和Topton出售的6个SATA端口的NAS变体广为人知。
黑色的使用JMS585,绿色的PCB使用ASM1166——黑色的只能使用C3,而绿色可以降到C8(我自己验证过,因为我确实有绿色的变体)。如果除了备份服务器之外我还需要其他东西,我会选择这里——使用LGA1700上更强大的英特尔。
Odroid H3是一个很好的例子,它说明了空闲功耗可以低到什么程度——在Spindown模式下,通过SATA连接2个HDD,空闲功耗小于2W……然而,一旦添加(错误的)组件,功耗就会迅速增加——请查看这里的功耗统计:
https://github.com/fenio/ugly-nas
TLDR:最后,它的功耗比你的配置要高——我必须补充一点,我之前拥有一台Odroid H2,它烧毁了5V通道,并连带烧毁了(昂贵的)SSD……从那以后,我一直在远离像Odroid H3这样的异类组合,因为它们的功耗绝对最低。
最后,我认为一切都要看实用性如何与功耗水平如何。
虽然如此,这台机器还是给我留下了深刻的印象——7W的空载功耗搭配750W的电源供应器,确实很厉害。
我目前正在将家用服务器从j3455升级到11400。
在更换硬件时,我发现了一个奇怪的问题:
I5-11400+2x8Gb 2666 ddr4 +ASUS Prime B560M-A (latest bios) +asm1166。
如果我从USB启动,不连接任何SATA驱动器,C状态达到C8。
如果我从USB启动,连接一个SATA驱动器到板载SATA控制器,C状态只能达到C2(+4W)。
如果我从USB启动,将SATA驱动器连接到PCIE ASM1166,则C状态达到C8。
因此,在我看来,B560 SATA控制器似乎存在省电问题。即使我启用了一切L1并运行了POWERTOP TUNE,它也不会低于C2。
您是否知道B560 SATA控制器会导致4W以上的原因?
最后,与其更换板载控制器,不如添加另一个ASM1166,这样长期来看会更便宜。:D
电源管理已启用,我也尝试过禁用它,但并没有改变功耗或C状态。(暂时保持启用状态)
在BIOS中,我可以指定M.2_2使用的是SATA还是PCIE。根据BIOS和手册,只有当M.2_2设置为SATA时,SATA6G_2才会被禁用。
但我将ASM1166连接到M.2_2并将其配置为PCIE。我确认了所有板载SATA端口都能按预期工作。
默认情况下,所有端口都禁用热插拔。我启用它来查看是否有什么变化,但没有。暂时将其设置为禁用。
我从USB启动,并尝试了不同的设备:2个SSD(Emtec和旧款三星)、2个3.5英寸HDD(WD和希捷),甚至还有1个LG DVD刻录机。
似乎连接什么设备都没关系。
情况总是如此,只要我通过板载SATA连接一个设备,C2就会达到最大值。
为了验证这一点,我使用连接了SATA设备的USB闪存启动,然后在启动时拔掉所有设备。
只要最后一个SATA设备从实时系统中物理断开,它就会立即进入PC6,然后很快进入PC8。
当重新连接所有SATA设备时,它会停留在PC6/8中,但dmesg无法识别重新插入(很可能是因为热插拔被禁用)。
我会仔细查看dmesg启动日志,也许会有什么有趣的东西出现。
-主板的 m.2 插槽可以正常工作(使用 m.2 ssd 测试)-sata 控制器可以正常工作(使用主板的 m.2-pcie 适配器和 x16 插槽以及另一个微型计算机的 m.2 插槽测试),但将 asm1166 连接到 m.2 插槽后,bios 或 lspci 没有任何显示。 因此,看起来 asrock 板存在一些问题。 不知道接下来该怎么做。
另外,我有一个普遍不理解的问题,如果我将家用服务器用作NAS和路由器,那么它是否会在空闲时始终处于工作状态,从而无法达到高c状态?我有一个千兆连接,目前我在pi4上使用openwrt,但启用qos后,下载速度只有一半。
再次感谢。
至于作为路由器,我不确定,虽然我希望在未来几周内进行测试。目前,我正在使用 ASRock/Intel J4005B-ITX 运行 OpenWRT 作为路由器,但主板的限制是 C6(尽管在 powertop 之后,它花费了 88-92% 的时间,包括我刚才测试的 YouTube 流媒体)。它由我的一台旧 Antec PSU 提供动力,能够稳定地保持在 10 瓦。
编辑/更新 12月13日:为了跟进,我在一个运行特权系统的systemd-nspawn容器中,对运行OpenWRT的华硕H770 + i3-12100 + 英特尔i350-4T进行了测试,系统特权为SYSTEMD_SECCOMP=0。结果有点乱。
什么都不做,它会在90-95%的时间内处于C10状态。
测试A:仅处理一台设备观看YouTube,90%的时间处于C10状态。连接到非常轻的家庭流量(峰值低于3Mbit/s),它有80-90%的时间处于C10状态。从我的一个网络服务器下载,速率上限为4MB/s(大约32Mbit/s),在C10中下降到50-60%左右。
测试B:从外部VPS到本地机器运行iperf测试(转发端口):
- 0Mbps = 约82% C10(仅家庭流量)
1Mbps = 约73% C10
5Mbps = 约61% C10
10Mbps = 约58% C10
20Mbps = 约30% C10
30Mbps = 约12% C10
……在40Mbps以上时达到0。
测试C:有趣的是,通过2个本地网络之间的路由器(无NAT,仅转发)时,结果有所不同:
- 0Mbps = 约82% C10(仅家庭流量)
- 1Mbps = 约82% C10
- 5Mbps = 约80% C10
- 10Mbps = 约74% C10
- 20Mbps = 约 70% C10
- 30Mbps = 约 64% C10
……在超过 70Mbps 时达到 0。
由于我在 nspawn 容器中,因此无法尝试在 OpenWRT 的防火墙部分进行软件流量卸载,以查看它是否能够减轻测试 A 和 B 的影响——很有可能 它所进行的"流量卸载"可能会使结果更接近测试C。此外,IPv6可能会通过跳过NAT在测试A和B中表现更好,尽管更小但更多数据包的影响可能会给事情带来麻烦。
据我所知,这里的关键在于,计算机在充当防火墙的同时,仍能找到机会进入睡眠状态,从而处理一定程度的流量。但如果它一直处于清醒状态……其他方案也会变得很有吸引力。我刚刚再次测试了英特尔J4005(只连接了显示器),即使在C-States被禁用的情况下,它在OpenWRT中的功耗也保持在9-10W,我怀疑J5xxx系列也会类似(不知道N100)。如果需要一些动力,我的Ryzen 5600G在Ubuntu LiveDVD上禁用C-states时的功耗为22-23W。在我看来,当Alder Lake失去C-State优势时,这两者的表现就变得同样有吸引力了。
编辑/更新 12月15日:裸机,将Debian配置为路由器。测试B几乎完全相同,只是C10的每个项目都高出6%——仍然达到了40Mbps以上的硬壁。流量表没有帮助。
测试C的结果稍好一些,最终数据如下:
- 70Mbps = 约70% C10
- 75Mbps = 约60% C10
- 80Mbps = 0% C10(遇到硬墙)
当我为测试C启用流量表时,我得到了更多数据:
- 80Mbps = 约60% C10
- 85Mbps = 约45% C10
- 90Mbps = 0% C10(遇到了瓶颈
测试D:为了测试连接数量增加的影响,我启动了一个洪流客户端,并添加了一堆洪流,全球下载速度上限为1MB/s。
- 0个连接 = 约80% C10(仅限家庭流量)
- 16个连接 = 36-39% C10
- 32个连接 = 33-35% C10
- 64 个连接 = 26-29% C10
- 128 个连接 = 21-29% C10
- 256 个连接 = 约 20% C10
- 512 个连接 = 约 15% C10
- 1024 个连接 = 约 5% C10
……我在不同点尝试了流量表。没有发现任何积极的变化。
在这个过程中,我发现了几个有趣的现象。
首先,流量表的作用不大。如果要说有什么作用的话,似乎在线速度测试峰值会降低一些。也许是我使用的英特尔i350-T4(在Debian裸机H770和OpenWRT裸机J4005上)的特定问题。
其次,在容器中使用OpenWRT并不是一个愉快的体验。我遇到了奇怪的问题,有些连接稳定,而有些则不稳定。也许经过足够的调整和调试,它可能会顺利运行。我发现,在裸机安装中,一个虚拟机全天候占用2-2.5%的CPU,并且对C状态不太友好,所以我并没有进一步研究这个问题。
第三,这个问题非常模糊,可能只存在于华硕H770,也可能与我的硬件组合有关,甚至可能与我运行的Linux内核有关……如果BIOS中启用了内置Realtek NIC,但未激活(通过systemd-networkd .network文件),安装并激活另一块网卡会导致系统50%的时间处于C3状态。我所说的"激活",甚至包括像[Match]name=X这样简单的情况,其余部分为空。我试过i210、i340和i350。当我使用i350-T4时,我发现禁用板载NIC并将网卡移至第二个PCIEx1插槽后,powertop中相应的SMBUS项目也消失了。有时,华硕似乎在PCIE总线上运行了一些小鬼。
我按照你的配置购买了相同的主板和i3-13100 cpu。
我有一个问题无法解决,不知道该从何处着手。
我安装了ubuntu 22.04,并尝试了23.04,但问题仍然存在:
每当我想ping http://www.google.com时,只要我移开键盘和鼠标,就会出现一个问题:
- 要么是"ping sendmsg no buffer space available",驱动程序是r8168
- 要么是"pcie link is down",驱动程序是r8125
我已经删除了所有能找到的电源管理选项。
我试着插入了另一个USB设备。
有什么线索吗?
1. 查看"dmesg"的输出,查看是否有相关事件。
2. 看看在通过22.04/23.04 LiveCD启动时是否发生,还是仅在安装后发生。
3. 尝试Ubuntu 23.10(我*认为*该发行版附带了在RTL8125上禁用ASPM的内核)——根据#1的结果,使用LiveCD或安装版。
4. 尝试不同的USB端口,一次只做1个,以缩小范围,确定是键盘还是鼠标(或两者),尝试不同的品牌键盘/鼠标,看看是否有区别。
5. 拔掉/重新插入网线,看看网络是否恢复,还是彻底瘫痪了。
6. 在BIOS中禁用"F1错误",尝试在没有插入键盘/鼠标的情况下启动操作系统,然后看看插入和拔出键盘/鼠标时会发生什么。
7. 如果你有PCIe网卡(最好不是Realtek的,用于测试),看看它是否也有同样的问题。
也许有遇到同样问题的其他人会回复。这种情况我遇到过,因为我最终没有拔掉键盘(最后换了一个无线键盘,它不怕被电源管理程序关闭)。这可能是硬件故障导致的奇怪问题。
CPU:i5-12600K
PSU:Corsair RM750e
NVMe:Samsung 980 Pro
RAM:2x16 GB DDR5
OS:Ubuntu 23.04 Server(通过USB运行)
我最初买的是华擎B760M Pro RS。在调整了BIOS,甚至在瑞昱卡上强制启用ASPM后,我无法降低PC-3。我的总功率约为15瓦。虽然不算糟糕,但这台机器是用于全天候运行的新家用服务器,我知道它可以做得更好。我给华擎公司发了电子邮件,因为他们的BIOS没有明确设置PC状态值,它只有自动、启用和禁用三种状态,如果他们打算添加支持,我什么也没听到。所以我放弃了他们。
我退回了华擎,改用华硕Prime B760-M-A。我配置了BIOS并运行了powertop。ASPM L1在Realtek上工作,无需用户更改。我的耗电量约为11瓦。拔掉DP线和USB无线键盘/鼠标后,耗电量降至7.2瓦。太棒了!它能够降到PC10,系统似乎非常稳定。台式电脑在耗电量方面取得了长足进步,这真是不可思议。
我刚用华硕Prime b760M d4进行了构建,发现我的主板也有同样的问题。我也联系了华硕,看看他们是否对连接到PCI/M2插槽的CPU有任何反馈。当我在x16插槽中插入英特尔I226-v,在CPU M2插槽中插入三星970 evo时,我进入了C6。
然而,我的X710-da2网卡只能在x4插槽中运行,因为如果使用x16封装,C状态只能达到c2/c3。
我的i226-v网卡没有任何问题。
我的用例是构建一个低功耗的10千兆路由器。目前运行的是OPNsense,但可能会切换到Vyos以降低系统负载。
我试过
1. Intel X520-DA2(中国主板),不支持 ASPM
2. Melanox ConnectX4(来自中国的板),支持 ASPM,但只允许 C3
3. 来自中国的 Randome I226 网卡 - 支持 ASPM,但无法启用 ASPM
那么。您能否告诉我确切的型号或您在哪里购买了 i226V-NIC?
我相信你以前一定听说过,但还是感谢你提供的信息丰富的帖子和宝贵时间。
老实说,我完全是个新手,有点不知所措,但拥有一台服务器的想法非常吸引我。我处理这件事的方式和我刚开始组装电脑时一模一样,看了一堆YouTube视频,读了一堆文章,然后摸索着前进。研究服务器的构建过程后,我立刻意识到,我必须知道自己在做什么,而阅读相关文章后,我更加明确了这一点。
对于一台Plex/Jellyfin服务器,您有什么建议?它必须始终开启、低功耗、具备完整的转码功能。 人们对Synology和QNAP等产品的评价要么很高,要么很低,这让我犹豫不决。再次感谢
感谢你的精彩文章!今年我为自己组装了一台低功耗NAS,用来替换我之前组装的QNAP TS-351(Intel J1800)和技嘉Brix J4105。我的要求是,新系统的平均功耗必须低于这两台系统的总和,并且性能要远远优于它们。通过阅读(之前的)文章、荷兰Tweakers论坛、德国Hardwareluxx论坛、unRAID论坛以及其他一些资料,我找到了以下配置:
- Intel i5-13500
- Gigabyte B760M GAMING X DDR4
- Crucial Pro CP2K16G4DFRA32A
- be quiet! Pure Power 12 M 550W
- 1x Toshiba MD04ACA50D 5TB (from my NAS)
- 2x 东芝 MG07ACA14TE 14TB(来自我的 NAS)
- Crucial P1 1TB (NVMe)
- 三星 980 1TB (NVMe)
- Crucial BX500 1TB(通过 USB 连接的备份)
- 创见 SSD230S 2TB (SATA SSD)
- 飞利浦 OEM USB2.0 驱动器(启动驱动器)
通过这种设置,我目前运行着近50个Docker容器,其中包含各种应用程序和数据库,空闲时耗电量可达17W。除了SSH,其他一切都在运行,但没有访问任何服务。对此我非常满意。C8软件包可以运行,尤其是在大多数应用程序运行缓慢或我停止它们时。当我停止一切时,在unRAID上最低可达11W。
我(和其他一些人)在英特尔600/700上发现的另一件事是,使用USB2.0串行设备(如Zigbee或Z-Wave设备)会增加功耗。大约5-7W。我目前在Pi上使用ser2net来规避这个问题。我联系了技嘉和英特尔,但他们都否认这是一个问题。
我还在大多数应用中使用E-cores,因为这平均可以为我节省1-2W。有些系统进程我倾向于将其移至那些带有任务集的内核。这似乎效果不错。
关于Realtek网卡,我最近尝试了应用商店中提供的"原生"Realtek驱动程序,但该驱动程序完全禁用了L1。导致额外增加了4W。恢复内核并强制使用L1: `echo 1 > /sys/bus/pci/devices/0000\:04\:00.0/link/l1_aspm` 即可。
如果您有任何疑问,请随时与我们联系。祝您新年快乐!
/sys/bus/pci/devices/$DEVICELOC/link/l1_aspm
这个设置,谢谢你的分享。我刚在MSI主板的RTL8125上试了一下,效果很好——在启动时设置这个参数比构建自定义内核要容易得多。不幸的是,我这台较旧的技嘉H110N上的RTL8168似乎没有公开sysfs设置,因此它将继续使用自定义内核,直到我有机会换成英特尔i210(尽管它只有1Gbit,但现在比AliExpress上的2.5Gbit英特尔i225稍微贵一点)。我的设置:
I5-12500
Asrock B660M Steel Legend
64GB DDR4-3200 Corsair LPX
2xNVME drives (1 SK Hynix Gold P31, 1 TeamGroup)
ASM1064 PCI-Express 3x1 to 4 SATA adapter"
Realtek 2.5G NIC
3x120mm Fans.
Proxmox 8 w/ Linux 6.5.11 kernel. Powersave governor enabled.
我尝试将一切还原到最基本的状态,并移除了所有存储设备和其他设备。我禁用了板载音频、Realtek网卡和ASM1062 SATA控制器。从U盘启动并运行Powertop,C2和C3的耗电量各占50%左右。从未超过。我使用LSPCI确认所有设备都支持ASPM,并在BIOS中启用了所有与ASPM功率相关的设置。我还检查了偷偷摸摸的超频设置,但没有发现任何已启用的设置。在此配置下,功耗约为20W。添加ASM1064 SATA控制器和NVME驱动器并没有产生显著影响。我每次都运行powertop --auto-tune,但没有明显的影响。
然后我添加了一个Nvidia 1660 Super GPU,并将其传递给一个轻量级的Linux虚拟机。然后我以持久性模式运行nvidia驱动程序,nvidia-smi报告说它使用了约1瓦。这节省了约10-20瓦。
添加约8个硬盘(Western Digital Reds和Seagate Exo硬盘的组合),机器空闲时功耗约为100W,80%的时间处于C2状态。
然后我启动主虚拟机,并直通SATA控制器。耗电量增加30W至130W,并一直保持在这个水平。主机上的Powertop显示,软件包从未进入任何C状态。我没有配置任何驱动器降速。
不确定我是否在问问题,只是分享我的经验。即使没有太大区别,我也肯定学到了一些东西。
我想从虚拟机迁移到主机上的Linux LXC容器。我想知道虚拟机是否在某种程度上影响了电源管理。再次感谢你非常详细和有趣的写作!
海盗船 SFX SF450 Platinum
华擎 Z690-ITX
海盗船 DDR4 2*16GB 3200 MHz
2 三星 NVMe 980 Pro 1TB 板载 miniPCIe(ZFS 镜像)
1 三星 EVO 870 2TB 板载 SATA(ext4)
I5-12400 步进 H0
Realtek 2.5G 禁用
1 个 CPU 上的 Noctua 风扇(92mm)
Proxmox 8.1(1 个 Docker LXC 与 plex 一起运行)
未连接屏幕、键盘和鼠标
BIOS 加载了 ASRock 默认参数 + 音频/WiFi 禁用,ASPM 启用
空闲时,插墙的功耗为18W
Powertop显示:Pkg C2 28%,C3 64% | 核心CPU C7 97%
无论如何,我在主板的ASPM页面(华硕Pro WS W680-ACE IPMI)中启用了所有功能,唯一让我注意到的是,它每次都会重置为自动,这是原生ASPM(启用后,它应该添加OS ASPM支持),但每次进入BIOS时,我看到它都设置为自动。您有什么线索吗?
当我运行此命令时,设备的实际状态如下:
至于BIOS,我的猜测是"原生ASPM"自动/启用可能也会导致相同的结果。您可以尝试将"原生ASPM"设置为"禁用",以尝试在操作系统上强制执行BIOS设置,然后查看"lspci"是否报告了当前显示为"ASPM禁用"的8个条目中的任何一条的改进情况——不过,您应该确保有外部备份,以防内核出于数据丢失的原因故意禁用系统上的ASPM。我不确定您的ASPEED AST1150桥接器运行的是什么,但既然ASPM似乎已被禁用,那么如果它的下游设备也被禁用,我也不会感到惊讶。
在故障排除时,您可能会发现每次重启/测试时更改1个BIOS设置很有用。如果您无法通过PowerTOP(甚至通过Ubuntu Live DVD之类的工具)获得任何信息,那么最好的办法可能是使用Kill A Watt设备来测量更改的影响。
您对这款主板有什么看法:华擎PG Riptide Intel Z690 So. 1700 双通道 DDR4 ATX 零售版
由于我有 8 个 SATA 端口,所以我不需要另一张 PCIe 卡(除非另有通知)。此外,i5 12400F 带有现有的 HDD 和 SSD
在我的办公室电脑中,MSI主板没有C-State、节能模式或其他此处提到的设置。这是MSI主板的问题还是主板本身的问题?这是B450M PRO-VDH MAX(MS-7A38)。
感谢您的帮助和任何沟通。感谢您的精彩文章。
您对这款主板有什么看法:华擎PG Riptide Intel Z690 So. 1700 双通道 DDR4 ATX 零售版
由于我有 8 个 SATA 端口,所以我不需要另一张 PCIe 卡(除非另有通知)。此外,i5 12400F 搭配现有的 HDD 和 SSD
在我的办公室电脑中,MSI主板没有C-State、节能模式或其他此处提到的设置。这是MSI主板的问题还是主板本身的问题?主板型号为B450M PRO-VDH MAX (MS-7A38)。
感谢您的帮助和评论:)
虽然你提到的B450M主板是AMD主板,但我只有几块B550主板,所以经验不多。你可能有一个非常基本的开关,叫做"全局C状态控制",不过你可能需要翻遍所有菜单项才能找到它。根据CPU的不同,如果你使用的是Linux,6.x系列中的较新内核支持不同的amd_pstate缩放驱动程序,这可能对整体功耗有积极的影响。
现在,一位同事买了一台迷你电脑并安装了Unraid。这台电脑有一个m.2到SATA的适配器,因此有6个SATA端口。这也可以用2个m.2,这样就可以安装2个Ryzer卡。
https://www.amazon.de/gp/product/B0BCVCWWF3/ https://www.amazon.de/gp/product/B0BWYXLNFT/
在空闲模式下,2个扩展坞和2个虚拟机没有任何设置时的功耗约为9W。连接了5个硬盘。
我们的想法是,它后面有一个移动CPU,你可以找到类似的东西。你有这方面的经验吗?结果看起来不错,性能应该足够。
- Mini PC有自己的电源,硬盘通过第二个160W的微型电源供电。他有一个空的NAS机箱,但仅两个风扇就额外消耗了11W,所以他还要再看看。
我的想法是打开迷你电脑,将包括硬盘在内的所有部件安装到我的ATX机箱中。使用1到2个Nactua风扇,将风扇转速调低,然后使用现有的ATX电源,再加上迷你电脑的Pico PSU。
硬件:
* CPU Alder Lake N6005
* Samsung 980 1TB
* 32 GB SO-DIMM
* 1 Gb/s网络
软件
* Proxmox 8
* LXC Home-Assistant
* LXC Plex (I915硬件转码)
* LXC dokuwiki
* LXC fileserve (smbd,filebrowser,vsftpd)
* LXC Syncthing
* LXC mosquitto
* LXC heimdall
* LXC gotify
* LXC rtsptoweb
* LXC esphome
等等
全天候运行
墙上的测量值(大部分时间处于空闲状态):7瓦
=== 我还有一个基于华擎Z690的自制"伪NAS" ===
* CPU I5-12400
* 2 NVMe 1TB
* 8 硬盘 ZFS Raidz2
* Proxmox 8
* 2.5 Gb/s 网络到我的台式机
墙上的测量值(大部分时间处于空闲状态):70瓦
按需运行
=== 切换8个端口 ===
功耗:8瓦
=== 我目前的实验 ===
对于家庭使用,我不希望我的"伪NAS"全天候运行,而只是按需运行
我在NUC11上安装了debian wakeonlan,然后
当需要时(按计划或手动请求),我可以运行
* wakeonlan [MAC-ADDRESS-Z690] 唤醒 NAS
* systemctl suspend [PSEUDO-NAS-Z7690] 将 NAS 置于睡眠模式
所有这些工作都很好
我正在 Home-Assistant 中开发一个图形界面,它还可以监控能耗
这是我找到的最佳解决方案:NAS、低能耗、家庭自动化)
空闲功耗:约5.3瓦
硬件:
* 华硕PRIME H610I-PLUS D4
* 英特尔酷睿i3-12100
* 关键内存32GB DDR4 2666 MHz CL19 CT32G4DFD8266
* 三星980 PRO SSD 2TB NVMe
* PicoPSU-150-XT
* Noctua NH-L9i-17xx,薄型CPU散热器
* Noctua NF-A8 PWM,机箱风扇
软件:
* BIOS 3010
* Ubuntu 22.04.3 Server(从U盘运行)
BIOS设置:
* EZ系统调优设置为"节能"(自动设置所有需要的BIOS设置)
* PL1/PL2 设置为 35/69 瓦。(因为外壳紧凑且使用低功率的皮安-皮秒)
软件设置(通过连接的电视控制台显示器进行设置)
* powertop --auto-tune
* setterm -blank 1
用kill-a-watt在墙上测量。读数主要在5.1和5.5瓦之间。一旦控制台屏幕变黑,就会进行功率测量。C-State包通过ssh收集。处理器大部分时间处于C-state C10包(约90%)。
这种配置的优点:
* 空闲功耗非常低
* BIOS配置简单
* PCIe 4.0 x16插槽可用于升级/扩展(但使用它可能会降低空闲功耗)
这种配置的缺点:
* 1GbE vs 2.5GbE
* picoPSU有一个4针电源连接器,主板需要一个8针电源连接器(互联网上的研究显示,这对于低功耗情况是可以的)
* 单个M.2插槽。PCIe 3.0 x4模式
我本来想要2.5GbE。当我在家里达到2.5GbE的临界质量时,我可能会在PCIe 4.0 x16插槽中玩弄2.5GbE卡。
其他信息:
* 神奇的"省电"BIOS设置没有打开"原生ASPM"。然而,打开它也没有任何作用。
* 在BIOS中禁用WIFI/蓝牙模块也没有任何作用。
操作系统:USB上的Unraid
电源:RM850x(2021),因为它在低负载时非常高效。
磁盘:在NVMe旁边添加了2x12TB WD Red Plus NAS驱动器
内存:1x32GB 3400MHz DDR4(从当前PC上拆下的
风扇:英特尔原装CPU风扇+Fractal Node 304机箱风扇,低速运行。
我的UPS测得的空闲功率约为21W,其中一块硬盘上装有Linux ISO,另一块硬盘处于待机状态。它们显然增加了很多功率。我将奇偶校验驱动器设置为仅在每天一次将NVME缓存同步到数据驱动器时旋转(至少我是这样计划的……),CPU的速度足以观看Creative Commons许可的电影。无论如何,21W对于我的第一个种子盒来说已经很不错了:D
这个电源效率表应该对这里的人有用!数据来自cybernetics:
https://docs.google.com/spreadsheets/d/1TnPx1h-nUKgq3MFzwl-OOIsuX_JSIurIq3JkFZVMUas
我成功让asmedia 1166在pcie x16插槽上运行,并使用连接到cpu的m2插槽,访问c8。
我必须修改华硕的BIOS才能访问根端口设置。我在根端口1上禁用了Multi-VC,现在可以使用x16插槽,并且进入了c8 CPU封装状态。同时使用连接到CPU的m2插槽时,我进入了c8。
简化步骤:
从主板上拆下BIOS
使用ch341 3.3v编程器转储BIOS
使用开源UEFI编辑器修改BIOS,并"取消隐藏"根端口设置。
刷新BIOS
后重新焊接。
我的主板是ASUS PRIME B760M-A D4,但Prime H770-Plus D4应该是一样的。
感谢英特尔支持部门建议禁用Multi-VC,否则我自己不会想到这一点。
CPU:i5-14500
主板:华硕Z790-P D4(这款主板是客户退货的,价格与H770-P D4相同,正如您所说,它有一个额外的PCIe 4.0 x4)
内存:4x 8Gb(无XMP)=> 将替换为2x 32Gb
NVMe:Sabrent Rocket 1TB PCIe 3.0
电源:Seasonic Focus GX-550
在TrueNas Scale 23.10.2和Ubuntu Server 23.10上进行了测试。对于这两者,我使用了Realtek驱动程序
几点观察:
是的,我确定。当我将罗技MX Keys USB2.0适配器连接到主板上时,电源的消耗从10.5W增加到15-16W。如果我没记错的话,它干扰了CPU的C状态(即不再进入C6、C8)。
我只测试了连接到主板(后部I/O)端口的USB2.0设备。USB2.0设备甚至无法在非USB2.0端口识别。
我的理论是BIOS和/或USB控制器的驱动程序。 由于我在正常操作中不使用任何USB,因此我没有进一步调查。 我现在又回到了TrueNas,它卡在了不支持我的CPU的powertop 2.14上,因此C状态报告被破坏了。
作为参考,我正在运行BIOS版本1611和英特尔ME 16.1.30.2307v4。
至于其他测试:
你的文章和评论真是无价之宝。感谢每一位做出贡献的人。我想简单分享一下我的经验:
华硕Prime H770-Plus D4 + i5-12400 H0 + 2x16GB 金士顿DDR4-3200 金士顿Fury Beast + 三星970 Evo Plus
不带键盘和HDMI
Powertop 2.14 (--auto-tune)
Ubuntu Server 23.04 Kernel 6.2.0-20 (new, no updates):
6-7 watts (mainly C10)
Note: If HDMI is connected (+2-3 watts) and Logitech MX Bluetooth receiver +4-5 watts = 7-8 watts for headless operation)
额外升级2xSamsung EVO 970:7-8瓦
额外升级4xSeagate X20 9-10瓦(睡眠模式)
升级2x14mm风扇12-13瓦(最低水平)
2xNVME和4x3.5"的功耗不到13瓦,性价比还不错(C10为90%)。
内核更新到6.2.0-39后,C10不再可行,系统只能升级到C3,功耗为21瓦。
显然与Realtek相关。手动设置
setpci -s 00:1c.2 0x50.B=0x42
setpci -s 04:00.0 0x80.B=0x42
幸运地恢复了C10状态,因此又回到了12-13瓦特
Ubuntu Server 23.10 Kernel 6.5.x 16-18瓦特(大部分时间处于C3状态)也有类似表现……
我尝试了Unraid(6.1.74)作为测试。系统不太节能,即使在通过setpci手动设置ASPM状态后(见上文),仍停留在16瓦特……Ubuntu的功耗要低几瓦,你需要做些研究。
无论如何,构建和研究过程都很有趣,旧版Synology的耗电量是新系统的数倍。
再次感谢Matt和其他所有人。
我用 Arc a380 测试过,网上的方法都不管用,闲置功耗为 20 瓦:"facepalm: 请推荐适用于 13500 的 mATX 主板,如果 mb 也支持 pcie bifurcation(x8x4x4)就更好了。
简单来说,我遇到了一个问题,在安装了GPU后,第一个PCI插槽将C状态减少到2。 否则,使用2个Lexar 1TB NVME和64GB内存,我发现功耗低至4.5-6W,这真是令人惊讶。
我想用asm芯片搭建一个基于ITX的i3-12100 NAS。然而,据我所知,使用x16 PCI插槽会迫使系统保持在C2状态。
但是,运行8个HDD、2个SSD和一个NVME(芯片组)是否会使达到高C状态变得不那么重要?
我假设您的瓦特数测试只显示了非CPU连接插槽中的ASM。看起来我的CPU达到更高的C状态可以节省大约20W的功率。硬盘的空闲容量和由此节省的功率与C状态无关?
硬盘节能和C状态节能基本无关:之所以说基本无关,是因为某些NVMe硬盘、某些SSD甚至某些SATA配置似乎会抑制C状态。但是,硬盘物理降速(与升速)带来的节能效果应该与系统中的其他节能措施(包括C状态)完全无关。
我有点担心,即使我强制启用ASPM,它也可能导致一些奇怪的稳定性问题。我想1GbE网卡仍然是唯一安全的选择,以确保电源管理在Linux下能够正常工作。
非常感谢
华硕Prime H770 Plus D4、I3-12100、2x32GB海盗船复仇LPX 2666MHz内存、安静!Pure Power 12 M(550 W)、WD blue SN570 512GB NVME硬盘、Supermicro AOC-SG-I2双端口GbE、安静Pure rock slim 2 CPU散热器
在Realtek驱动程序上强制启用ASPM后,即使关闭ASPM也会出现问题,但我现在可以将WD blue插入Gen 4x4 NVME插槽,将Supermicor插入Gen4x4 PCI-E插槽,而硬件包不会停留在C3。使用Proxmox 8.2,硬件包在C8上的时间约为60%,CPU在C10上的时间约为98%,核心(硬件)在C7上的时间约为96%,耗电量约为8-9W(在墙上测量)。所有这些都是在应用了所有标准的BIOS省电设置并运行了powertop——auto-tune,以及通过命令行在Realtek上设置了L1 ASPM之后。
我看到的都是短暂的峰值,在运行 powertop 时,功耗会从 15W 上升到 8W。因此,我有 2 个额外的插槽,可用于 MVME 驱动器或添加 NVME 的位置——>6 个 SATA 适配器卡(带有 ASM1166 芯片组)。
我还可以确认,在Realtek NIC上设置ASPM后,其他网卡不再导致C3问题。如果有人想要比Supermicro更便宜的选择,那么"10Gtek双网卡,带82576 Intel芯片组"也可以很好地工作。
我之所以首先找到您的文章,是因为我一直在台式机系统上试用ASPM,发现它只为我节省了可怜的2瓦功率,您的文章表明我的发现有问题,也许我需要做更多的研究,遗憾的是几乎没有人公布特定情况的节电数据。您的文章向我表明,ASPM的最大优点是它可以让CPU进入深度节能状态,所以我怀疑问题出在这里。我之所以对此感兴趣,是因为我和您一样,正在使用台式机部件来运行存储平台,我希望尽可能降低功耗。
此外,您使用的硬盘的待机功耗如此之低,也很有意思。
我买了两个希捷铁狼硬盘,遗憾的是,这两个硬盘的空转功耗高达8瓦(旋转时),而待机状态下的功耗不到1瓦。后来我又买了几个12TB的西部数据氦气硬盘,旋转时空转功耗不到4瓦。待机状态下的功耗与希捷硬盘差不多。
这两个希捷硬盘的其他问题是(a)如果向硬盘发送任何命令,例如SMART查询,它们就会加速旋转,这是我从硬盘上从未见过的奇怪行为,甚至使用搜索工具查询它们的睡眠状态也会使它们加速旋转,而连接到同一ASmedia控制器卡上的WD硬盘则不会出现这种行为。此外,我认为是idle_c状态的慢速RPM旋转模式在我的两个希捷驱动器上不起作用。我使用的TrueNAS软件每5分钟发送一次SMART查询,用于温度监控功能,该功能很难关闭,只能全局开启或关闭。因此,如果希捷硬盘被关闭,它会唤醒它们,我最终手动修补了代码,以便将两个希捷硬盘从温度监控的黑名单中删除,这样,如果硬盘处于待机状态,SMART健康检查就会被跳过。
考虑到这一点,虽然我的耗电量比你的高得多,但系统运行时没有风扇,有4个主轴、3个SATA SSD和1个NVME SSD,空闲时耗电约48W,所有主轴停止旋转时耗电约34W。系统中有3个风扇,
我对NVME也有有趣的观察。
在我的系统中,我发现NVME驱动器的运行温度始终比SATA SSD高得多,而且通常也比活动主轴高。在NUC中,我不得不采用主动冷却,因为NVME即使在空闲时也保持在70C的极限。和你一样,我发现这些在电源状态方面有点无所适从。
例如,我发现,在Windows系统中,ASPM对系统中的3个NVME驱动器似乎完全没有影响。L1和L0对温度也没有影响。我有一块三星980 Pro、一块西部数据SN850X和一块PCI Express英特尔DC P4600,后者有自己的强力散热器。
基本上,DC P4600的温度始终低于30摄氏度,不受ASPM模式的影响。
WD SN850X的温度在40摄氏度上下,具体取决于环境,不受ASPM的影响。
我还测试了WD SN570,它的表现与SN850X相同,不受ASPM的影响,空转温度约为45摄氏度。
最后,980 Pro也不受ASPM的影响,但我可以用这个驱动器触发更低的功率状态,空转温度非常高,大约在54-60C。
因此,Windows系统隐藏了电源设置,允许您直接使用NVME电源状态。如果处于第一个NVME节能状态,三星980 Pro的温度将下降约7-8C,虽然我很欣赏它,但它仍然是我最热的NVME驱动器,比运行在20多度的SATA SSD更热。有趣的是,第二个节能状态只会再降低1-2C。
根据网上的各种评论和报告,WD NVME驱动器似乎始终不支持更深的节能状态。幸运的是,我的WD驱动器运行时没有三星驱动器那么热。
我还有一台970 EVO,它以前空转时温度约为65摄氏度,我把它放在一个PCIe NVME适配器里,上面有一个大散热器,温度降到40多度。因此,我对三星硬盘的温度体验并不好。我决定我不喜欢NVME硬盘,它们对我来说温度很高,而且与SATA SSD相比,空转功耗非常高,但你们似乎已经破解了它们。
至于CPU/主板,如果无法长时间处于C6-C10状态,英特尔第12代处理器就会失去优势(遗憾的是,除非尝试一下,否则无法知道是否能够达到这些状态)。但总的来说,对于全天候中等负载的系统,我个人现在更倾向于AMD。
我想知道你是否考虑过CSM版本的ASUS Prime H770-Plus D4。据我所知,CSM与i5(如12500或13500)结合使用,应该可以启用vPro企业功能,进而带来DASH、KVM/IPMI等远程管理功能。DASH的功能远不及功能全面的ASPEED AST2600 BMC解决方案,后者通常需要额外消耗5-10W的功率。
同时,CSM还旨在为企业带来稳定性,这意味着用于调整C状态等的BIOS选项更少。
现在快速浏览一下产品页面,我发现它与非CSM型号的唯一区别是能否访问华硕控制中心Express。CSM型号的技术规格页面除了添加了"1 x ACC Express激活密钥卡"外,其余内容完全相同。手册也完全相同,没有提到任何区别。我下载了两个BIOS(1663),校验和完全相同,不过我想可以通过标志来切换功能。
如果除了ACC Express软件提供的功能外,其他功能/性能/BIOS完全相同,我也不会感到惊讶。但除非有人尝试,否则无法确定。
没有9600,系统可以达到C10。它还没有准备好,所以我还没有插入它。
主板上的真正糟糕之处在于最小风扇速度为20%。我不知道为什么,但我的最小功耗是11.5W,但使用X710-DA2。我将把CPU散热器换成被动散热器。可能会增加一瓦。
给对X710-DA2感兴趣的人一个信息:至少对我来说没有WoL。修补那个东西纯粹是癌症——在EFI中做。那个东西在主动模式下会变得很热。你需要主动冷却它或更换水槽。我选择了后者。用pcie套件将卡水平放置。装上 https://www.reichelt.de/kuehlkoerper-75-mm-alu-1-3-k-w-sk-89-75-kl-ssr-p227795.html?search=Sk+89+7 ,现在我也有一个电钻了。你需要用间隔垫片将卡固定在主板上。提示:只有自制电子燃油喷射系统才能使用电子燃油喷射外壳。忘了主板上的电子燃油喷射系统吧。
万一,对于相同的 CPU 或第 3-12 代,您是否知道任何好的 m-ATX 或 itx 板,例如上述?
- ASUS PRIME H610I-PLUS D4(ITX、DDR4,但1G Realtek以太网可能是个重大赌注)
- ASUS PRIME H610M-A D4-CSM(mATX,DDR4,1G Intel)
- 华硕PRIME Z790M-PLUS(mATX,DDR5,1G Intel)
我非常喜欢最后两款主板上的英特尔1G以太网,这并不奇怪。需要说明的是,我实际上没有尝试过这些主板:我的假设是,BIOS等可能与H770-PLUS D4相似,并且我可以复制结果。但我不能确定。Z790M-PLUS上有4个PCIe和3个NVMe——假设DDR5不会造成问题,它可能是我最青睐的。不过,我怀疑小芯片组散热片可能需要一定的气流。
请注意,可能还有很多其他合适的选择,包括PRIME系列以外的产品,也包括华硕以外的产品。从历史上看,技嘉一直是我的首选。只是这一代产品不适合我。
设置:
- ASUS PRIME H610M-A D4-CSM
- i3 12100,带英特尔散热器
- Samsung 970 Evo Plus 1TB 作为启动硬盘(在第一个 M.2 插槽上)
- Mushkin 2x 16GB DDR4 3200
- Be quiet M12 550
- 最小的 Debian 12
我将 Matt 的 Bios 设置移植到了 mATX 主板上!
在墙上测量(Fritz Dect 200)= 6.4 瓦(空闲时)
使用 PicoPSU-90 时,我的功耗为 5.7 瓦(但 WOL-Standby 时的功耗要高得多!)。
感谢您的出色工作,如果没有您的 Bios 说明,我可能要花上一个月的时间才能达到低功耗状态...
我实际上也在寻找 mATX 主板来打造真正高效的家庭服务器。我只是一个额外的警告,即在被动冷却的外壳 (HDPlex H3) 中构建它。
现在,这使得我的主板选择有点困难,因为 - 看起来 - 我必须在两个主板之间进行选择:
华硕 Prime Z790M Plus
+ 英特尔 1G 以太网
- VRM 散热有点小而脆弱
华硕 TUF B760M Plus II
+ 在我的国家便宜不少
+ 更笨重的散热器
- 2.5G Realtek 以太网
我目前倾向于 TUF,因为另一个以太网比更强的 VRM 散热器更容易添加,但我想听听您对 2.5G realtek 以太网控制器有多大的影响发表意见。
提前致谢!
考虑到这一点,根据您打算运行的CPU,VRM冷却可能并不重要。我使用的H770-PLUS甚至没有VRM冷却器横跨顶部VRM。虽然我在我的VRM上添加了一些小型散热器,但它们并不是真的需要,因为VRM一开始并没有变得非常热。
被动冷却方面,我更担心的是芯片组散热器,因为当芯片组处理大量数据时,它可能会变得非常热。TUF GAMING B760M Plus II看起来与Prime Z790M Plus的散热器一样(只是黑色和旋转)。除了拆下散热器并做一些保修无效的改装外,你可能无能为力。
抛开这些不谈,如果你愿意为了获得良好的C-States而经历必要的麻烦,Realtek 2.5G并不一定是你的最佳选择。不过,我建议你最好从有退货政策的零售商那里购买,以防万一它比预期的更麻烦。
我不知道这是有缺陷的单元还是设计缺陷,但我不会冒险从不提供 30 天退货政策的商店购买这块板。华硕支持完全无用,在这种情况下的保修也是如此。
CPU:i7-14700
主板:华硕Z790-P WIFI(连接2.5G LAN)
内存:96GB DDR5(2x32GB + 2x16GB)
NVMe:三星970 EVO Plus 1TB
电源:海盗船RM750x
功耗测量时未连接显示器。
几点观察:
---- 电源的重要性 ----
1) 我一开始用的是 Seasonic Focus 1000w 电源,功耗为 14.4w。换成 Corsair RM750x 后,功耗降低了 4w。RM750x在20w时的功率效率约为80%,这意味着我原来的Focus 1000w在20w时的功率效率一定很差(10.1*0.8/14.4=56%)!所以,朋友们请考虑投资一个更好的电源(参考: RM750x 表格中的数字:https://docs.google.com/spreadsheets/d/1TnPx1h-nUKgq3MFzwl-OOIsuX_JSIurIq3JkFZVMUas/edit?gid=110239702#gid=110239702)
2) powertop 2.14 不支持 Intel 13/14Gen CPU(最初只显示 C3 状态)。我不得不编译最新的 powertop 2.15,这才让我看到 C6-C10 状态。
---- ASUS Z790-P 板载 SATA 控制器存在问题 ----
3)一个令人惊讶的观察结果是,如果我将SSD连接到板载SATA接口,CPU的c状态只能达到C6(根本没有C8和C10)。然而,如果我将同一块SSD连接到ASM1166 PCIe-to-SATA卡上,则可以达到C10。这似乎表明,该主板的板载SATA控制器无法正确支持ASPM(板载SATA控制器的"lspci -vv"输出未显示任何ASPM功能)。
---- 添加GPU的成本 ----
4)添加一个Nvidia GTX 1050 Ti GPU导致空闲时功耗增加16w。不久,我意识到可以通过优化"nvidia-smi --persistence-mode=1"来降低nvidia GPU的空闲功耗,这样16w就变成了8w(GPU性能模式P8)。然而,在没有GPU的情况下,它仍然比我的10.1w空闲功耗增加了80%。可能不值得保留GPU。更多的研究表明,GPU本身在空闲时仅消耗约3w,但由于GPU的存在,CPU C状态保持在C6,因此(有GPU和无GPU)相差8w。
5)当我将GPU连接到芯片组连接的PCIe插槽时(最初它位于CPU连接的PCIe插槽中),功耗又增加了6w。是的,经过所有优化,如果您将GPU连接到主板上的芯片组插槽,则GPU会增加8+6=14w的功耗。 我注意到C状态从最大C6变为最大C3,这可能是额外6w的来源。
总的来说,我对结果很满意,这是一次有趣的体验。我真的很想添加一个GPU(例如用于照片相关任务),但考虑到功耗,这太贵了。 有人有在低功耗服务器上使用GPU的经验吗? 有什么方法可以释放CPU的C状态,使其达到C8/C10? 注意我指的是空闲时的功耗(GPU不用于图形输出,也不连接到显示器)。
我很惊讶 AMD 芯片组在功耗方面远远落后。我怀念过去的时光,当时早期的 AMD APU 为 mini-ITX 主板提供了多种不错的选择,并且人们齐心协力使整个封装具有低功耗。
我刚刚看到新的 AMD X870 芯片组的 TDP 应该是 7 W,但到目前为止宣布的主板似乎有点矫枉过正(“ROG Strix X870-A 游戏 WIFI 配备 16+2+2 功率级,额定电流高达 90A”,alktech 说)。
希望使用 10 GbE 网络升级我的 pfsense 和 truenas 盒子,并看到了这篇文章。按照使用带有 intel 1gb 以太网控制器的主板的建议,我选择了 Asrock b660m pro RS,两个盒子都选择了 pentium g7400。我想要一个额外的全长 PCIe 端口,以便在将来进行一些扩展。
打算在这里尝试调整:https://www.reddit.com/r/ASRock/comments/1998ozl/how_to_get_higher_pkg_cstates_on_asrock/
以查看我是否可以获得一些可接受的功耗。我看到了您关于使用 ASUS 的 H610M 的评论,如果我对这些板子没有太多运气,可能会切换到它。会回来报告,因为我似乎找不到太多关于人们是否成功降低 b660m 功耗的信息。
任何建议将不胜感激!
- 国产主板 CWWK Q670 V1,板载 3xnvme、8 个 sata、pcie5 x16(可分拆为 2 x8)(理论上可放置 5 个 nvme 磁盘)、2x2.5Gbs
- i5 13500T
- 1 个模块 48GB DDR5 Crucial Pro。
- 2xSamsung evo 970 plus, 1xLexar NM790
微型电源(我目前没有其他电源)
- 一个端口连接 lan
在空闲状态下,Proxmox 运行约 8-10W
总体来说参数不错,但在我看来,BIOS 还不够完善,一个端口的 ASPM 存在问题,只有三星 evo 在启用 ASPM 后可以正常工作,其他端口的其他磁盘都可以正常工作。
处理器只能降到 C6 状态