服务器专题 | 第20期:报价单上看不见的内存降频账
一张报价单上写着:两颗处理器,512GB 内存,DDR5-5600。机器到货,开机进 BIOS,内存那一行写着 4400 MT/s。没有人撒谎。内存条没撒谎,报价单也没撒谎——两个数字量的不是同一件事:一个是内存条出厂标称的速度,一个是这台机器按这种插法实际跑出来的速度。中间差的那 1200 MT/s,不在零件上,在插法里。
这篇只算这一笔账:通道对称、每通道插几条、Rank,三个插法决定实际速度的地方。
通道先对称,路才全开
内存控制器访问内存,是把地址拆开、同时往几条通道上铺的。通道就是路,路开几条,带宽就是几条路的总和。一台 8 通道的机器,戴尔 PowerEdge XE9680 的手册写明:每颗处理器 8 条通道,每条通道 2 个插槽,全机 32 个插槽1。只插 4 条,等于 8 条路只开了 4 条,剩下的路空着,带宽先天就少了一半。
这个道理有实测的刻度。联想针对第四代 AMD EPYC 处理器做的均衡配置测试里,12 条通道全插满时相对带宽是 100%,只插 1 条是 9%,2 条 18%,4 条 35%,6 条 51%,8 条 68%,10 条 84%3。数字不是严格的等比,却足够说明一件事:带宽是按插满的通道数一格一格长出来的,少插一条,就少一格。
上排 8 条通道全开,下排只开 4 条:带宽先天就少了一半(示意图为程序绘制)
对称还有第二层意思:两颗处理器要照镜子。戴尔另一份手册把规则写成一句话:为获得最佳性能,各通道一律用相同的内存条插满4。一颗处理器插 8 条、另一颗插 4 条,或者同一通道里混着不同容量的条,控制器就没法把地址均匀地铺开,有的通道忙、有的通道闲,性能跟着忽高忽低。扩容时按通道数成组加,8 通道机器就 8 条起加、16 条起加,图的是地址铺得均匀,不是图数字好看。
第二槽一插上,速度先降一档
通道数管的是路宽,每通道插几条管的是车速。同一条通道上挂两条内存条,电气负载翻倍,信号余量收窄,控制器在开机训练时会把速度谈到两条条子都站得住的那一档。戴尔 XE9680 的支持矩阵写得明明白白:2R 96GB 的 DDR5-5600 内存条,1 条每通道跑 5600 MT/s,2 条每通道只跑 4400 MT/s;4800 的条子、4R 128GB 的条子,2 条每通道同样落到 4400 MT/s1。上一代至强也是同一规律:WWT 的配置指南指出,第四代至强上 4800 MT/s 的满速只在每通道第一槽插满时成立,第二槽一插,通道速度降到 4400 MT/s2。
同一条 5600 的内存条,1 条每通道与 2 条每通道的实际速度(示意图为程序绘制,长度按 5600 与 4400 比例)
这笔账可以算到带宽上。8 条通道,每条 64 位宽:5600 MT/s 时理论带宽是 8×5600×8,约 358.4 GB/s;落到 4400 MT/s,只剩约 281.6 GB/s,差出 76.8 GB/s,约两成。花 5600 的钱,跑 4400 的速度,差价买的是用不上的标称。更常见的坑是混插:不同速度的条子插在一起,全机按最慢的那条跑4。旧条子利旧省下的钱,可能正好等于新条子被拖慢的那部分。
所以容量与速度是一道选择题,不是两全题。要满速,优先每通道 1 条、用单条容量撑总量;要最大容量,就要接受 2 条每通道并提前把降频写进预期。两种选法都成立,站不住脚的只有一种:按 5600 签了字、按 4400 交了货,验收时才发现两者不一样。
Rank:同一通道里的另一层并行
Rank 是内存条内部的组织方式:共用同一片选信号、同时被访问的一组芯片,构成 64 位宽的数据块,ECC 条子上是 72 位5。控制器一次只选中一个 Rank,但可以在几个 Rank 之间轮换:一个 Rank 在等待时,另一个 Rank 接上,等待就被藏起来一部分。这叫 Rank 交错,是同一通道里不花通道数的并行。
可 Rank 多了,负载也跟着多。同一通道上 Rank 越多,控制器要驱动的负载越重,通道速度同样可能往下让。于是同样的 512GB 有两种走法:16 条 32GB 单 Rank,还是 8 条 64GB 双 Rank,报价单上都只写 512GB,跑出来的速度却可能不在一档。签单之前,除了容量与标称速度,还要看清两样东西:条子的 Rank 标注(1R、2R、4R),以及厂商支持矩阵里这种插法对应的实际速度。戴尔手册里还有一句提醒:处理器的型号与插法共同决定最高速度,标称速度不作数1。
落到买方手里,验收清单其实只有三条:两颗处理器插法是否对称;每通道 1 条还是 2 条,对应速度在厂商矩阵里是哪一档;开机后 BIOS 里读到的实际 MT/s,对上的是矩阵里的那一档,而不是条子标签上的数字。三条对上,降频就不再是意外,而是算过之后的选择。
以小见大的一层判断:报价单写的是零件参数,机器跑的是系统行为。两者之间的差,就是配置的学问所在。省内存条数的钱,要和丢掉的带宽一起算;为容量接受降频,也可以,但得是事前算好的取舍,不是到货才发现的落差。更往深里看,服务器里许多“性能问题”都是这个形状:单点参数都对,组合起来才现形。看一台机器,不能只看它由什么零件组成,要看这些零件按什么方式连在一起。
没完全想通、留下一个问题:4400 与 5600 的差距,在哪些负载上从账面变成体感,还缺一组按访问模式拆开的实测。内存密集、访问随机的负载,带宽差一档可能直接变成等待;计算密集、数据常驻缓存的负载,差的那两成可能根本摸不到。这条分界线在哪,还缺能复现的数。没有它,选型时降频的代价只能算方向,算不出边界。
觉 然 小 注
零件的速度印在标签上,系统的速度长在插法里。
· · ·
九羲科技|服务器 · 私有 AI · 存力方案
系列目录
第1期 | 73% 的整机钱,都给了 GPU 板组
第2期 | 4500 颗芯片撑起 95% 的机架价值
第3期 | 拆一台 2U 双路:通用服务器的钱花在哪
第4期 | 大铁盒子,值钱的不是铁
第5期 | 冻结点:L5 之后结构不许再改
第6期 | 能点亮不等于能交付:十二层验什么
第7期 | 内存离 CPU 有多远:NUMA 的延迟税
第8期 | 带宽不是买速度,是买并行度
第9期 | 一颗坏芯片,怎样不拖垮整机
第10期 | 数据上台三步,每步都在花时间
第11期 | CXL 内存慢一档,为什么还值得买
第12期 | 存力只在关键路径上才算数
第13期 | 链路是谈出来的:开机几秒谈什么
第14期 | 四电平挤带宽:SerDes在替谁赎买
第15期 | 端口数好看,带宽要看上行
第16期 | 把故障关进一个端口
第17期 | 设备能缓存主机内存,变了什么
第18期 | 数据直进 GPU,省掉了什么
第19期 | 先画归属图,再谈配置
引用与出处
[1] Dell. PowerEdge XE9680 Installation and Service Manual, System memory guidelines. dell.com. https://www.dell.com/support/manuals/en-jm/poweredge-xe9680/xe9680_ism_pub/system-memory-guidelines?guid=guid-84adc244-ab21-4848-911b-2395b15cedc7&lang=en-us
[2] WWT. Memory Population Guidelines for Intel 4th Gen Xeon Scalable Processors. wwt.com. https://www.wwt.com/article/memory-population-guidelines-for-intel-4th-gen-xeon-scalable-processors
[3] Lenovo Press. Balanced Memory Configurations with 4th Generation AMD EPYC Processors. lenovopress.lenovo.com. https://lenovopress.lenovo.com/lp1702-balanced-memory-configurations-with-4th-generation-amd-epyc-processors
[4] Dell. PowerEdge XR7620 Installation and Service Manual, General memory module installation guidelines. dell.com. https://www.dell.com/support/manuals/pt-pt/oth-xr7620/xr7620_ism/general-memory-module-installation-guidelines?guid=guid-64c9a48d-bdd8-45f5-b7a9-22f2a8d82588&lang=en-us
[5] Viking Technology. AN0033 DRAM Memory Module Rank Calculation Whitepaper. digikeyassets.com. https://sc-b.digikeyassets.com/Site/Global/Layouts/DownloadPdf.ashx?pdfUrl=EE33DF78203D4692B71894E732852EA4
下一篇|第21期:查协商速率、查 AER 计数,一台服务器的出厂体检表。