今天帮朋友查资料,顺手写点东西分享给大家。
系统峰值功耗的计算:是否要这么严格?
这次我写的题目源于下面表格(图片点开后可放大),其中信息量可是不少。
为了便于大家阅读,有必要解释一下:
-表格中最左边2列,是CPU TDP(热设计功耗)和累积CPU Pmax;
-最上面几行分别标明了显卡(GPU)数量、型号,以及累积的GPU峰值功耗;
-表格中绿色部分,表示用1个1100W电源模块就可以支持的配置;
– 蓝色部分,表示用2个1100W电源非冗余模式(即合并功率输出)、或者1个在220V输入的1600W电源、2个在110V输入的1600W电源非冗余模式可以支持;
– 红色部分,表示用2个在220V输入的1600W电源非冗余模式才可以支持;
所指的机型就是下面这款DellPrecision 7920 Rack机架式工作站,看过我写《Dell PowerEdge R740xd解析:服务器只看参数那就错了》的朋友估计会有似曾相识的感觉。没错,R7920的硬件平台就是基于2U的R740。
当然本文的重点不是讨论某一款主机,而是上表中那些功率数字,以及计算推导的过程。
该型号机架工作站可以支持3块全长、双宽的250-300WTDP显卡
Xeon Scalable处理器的Pmax峰值功耗
下面我们直接从Intel文档中把TDP和Pmax功率的对应关系列出来,这样看起来是不是舒服些:
平时大家常挂在嘴边的205W啥的都是热设计功耗,而Pmax则是除了服务器/工作站设计人员、电源工程师之外很少被提及的一个数字。以两头为例,70WTDP Xeon SP处理器的Pmax为154W;而205WTDP对应的Pmax高达413W,翻了一倍还多点啊。
我理解这个Pmax只是瞬间可能达到的峰值功耗,不是说TDP不可超越,而是如果CPU功耗真的能长时间提高这么多,我估计许多机型的供电和散热设计都吃不消。我在这里讨论的范围是2颗205W TDP CPU的平台。
结合下面这张图会更好理解一些:
上图截自IntelCore桌面处理器的文档,但道理是一样的。PL1(Power Limit 1)就是TDP;PL2 Intel规定允许的时间为100秒(实际情况另说);而功率更高的PL3和PL4范围,则是只允许10ms瞬时达到的峰值。
关于Core系列的PL2具体数值,Intel官方文档中写的是PL1*1.25,大家不要对这个太认真。因为PL2在不同主板/机型上是可调的,比如65WTDP的Core i7CPU,在10秒甚至更长的时间跑到2倍设计功率都不新鲜,而95W的K结尾型号就更不用说了。
不过,针对企业级的Xeon处理器在PL2上则要保守许多,主要是Xeon Scalable和Xeon W-2000系列,除了前面提到的平台设计考虑,还有更多侧重于可靠性。由LGA-115x和LGA-1200衍生出的Xeon E及其后续XeonW-1000系列例外,本文先不展开讨论。
GeForce和Quadro/Telsa GPU的实际功率
下面这个也是从本文开头的表格中提取出来,可以说是不多见的一组数字。
注:上表中RTX5000及以上,TDP一栏较低的那个功耗,是在不使用Type-C供电的情况下。
这里的“峰值功耗”是不是有点吓人,甚至我怀疑有没有看错?比如75WTDP的P2000显卡峰值功耗居然高达204W,在没有辅助供电接头的情况下,PCIe x16插槽理论上只提供75W的供电,如果真的在204W运行哪怕10秒,我都担心电源和主板供电吃不消。
同时我还发现,Quadro P4000和RTX系列的峰值功耗看上去显得更高,比如RTX 5000、6000和8000显卡都是1个8pin 1个6pin 12V供电,理论上不应超过300W。因此我可以很确定地说,这个“670W”也肯定只是在瞬间可能达到,并且对系统设计不会有太多的压力。
为什么我敢这么说?因为定位商用/企业级的Quadro/Tesla在耗电设计上比GeForce要保守,类似于前面讨论的Xeon和Core之间的关系。我曾经写过《460W电源能否带动GeForce RTX 2080 Ti显卡?》,不过事实上2080Ti并不总会严守250-260W的TDP,短时间(至少几秒)达到300W甚至更高功率是会有的,所以它会设计2个8pin供电接口。
上图是我从FCPOWERUP网站引用,2080 Ti的12V峰值电流测到了52A,这可是624W(当然也是瞬时)。所以别看Quadro标称的峰值功耗高,实际对电源和散热的压力比2080Ti要低,特别是在多卡的系统环境中,我在《4U 10卡机器学习服务器:为什么PCIe比NVLINK能效比高?》中也讨论过。
别忘了电源也有Peak电流/功率
前面我们看到,在7920Rack工作站计算需要的电源功率时,拿CPUPmax和显卡峰值功率直接去相加了。实际应用中2颗CPU和多块显卡可能同时达到峰值吗?
还记得大约15年前,有次听一位Intel女工程师的英文分享——以实际应用来测试PC运行时的功率,相比直接把各组件的TDP相加,最多也就是达到60-70%的水平。不过当年的桌面CPU还没有Turbo,也没有这么Power的显卡(通用计算GPU也没出现)。
所以当年我们跑Pentium4、PentiumD的MaxPower散热测试,通常只是设定80% TDP。服务器还是要跑100%的,但当年电源选型时没有为“峰值功率”留出那么大的裕量。原因很简单——电源标称的也是可以长时间稳定运行的额定功率,而短时间乃至峰值都可以跑到更高。
上图是7920 Rack支持的2种电源模块参数。其中1100W这款还特别标出了153.3安培的峰值最大输出电流,计算下短时峰值功率已经超过1800W。
1600W模块倒是没有写这个Amps Peak,个人猜测可能没有1000W那么大幅度?但肯定也应该有一个高于额定的峰值功率(浪涌)。
回过头来再看这款2U机架工作站的电源配置规则,可谓相当保守,同时应该也留出了比较大的设计裕量。当然,这有可能和使用的具体电源模块特点有关。如果换成另一款GPU服务器/机架工作站,即使对应的电源功率没有峰值余地(或者不确定?),我觉得套用这个算法也不会有风险。(注:前提是电源12V输出设计合理,大品牌整机不会有虚标的问题,DIY说不准)
小结
简单总结下本文:大家不要被CPU的Pmax和显卡峰值功耗吓倒,在通常情况下,从电源到主板,从线缆到连接器等都有为短时峰值电流留出的裕量设计。只是有一点举例,能稳定支持3块Quadro RTX 6000/8000显卡的机型,换成同样数量的GeForce RTX 2080 Ti却不一定100% ok。是因为消费级和商用GPU之间的差异,我在前面讲过了。
扩展阅读
《PCIe 5.0供电规范:12V 600W如何实现?》
《后IB时代的GPU服务器:48V和液冷哪个先行?》