一个程序员对电源最基础的期望,首先得是能满足各种GPU所需能量吧。随着GPU朝着更低能耗发展,一个质量优秀的PSU能陪你走很久。
应该怎么选?Tim小哥有一套计算方法:将电脑CPU和GPU的功率相加,再额外加上10%的功率算作其他组件的耗能,就得到了功率的峰值。
举个例子,如果你有4个GPU,每个功率为250瓦,还有一个功率为150瓦的CPU,则需电源提供4×250 150 100=1250瓦的电量。
Tim通常会在此基础上再额外添加10%确保万无一失,那就总共需要1375瓦。所以这种情况下,电源性能需达1400瓦。
这样手把手教学,应该不难理解了。还有一点得注意,即使一个PSU达到了所需瓦数,也可能没有足够的PCIe 8-pin或6-pin的接头,所以买的时候还要确保电源上有足够多的接头接GPU。
另外,买一个能效等级高的电源,特别是当你需要连很多GPU并且可能运行很长时间的时候,原因你懂的。
再举个例子吧,如果以满功率(1000-1500瓦)运行4 GPU系统、花两周时间训练一个卷积神经网络,需要耗用300-500度电。按德国每度0.2欧元计算,电费最终耗费约折合人民币455-766元。
如果电源效率降到80%,电费将增加140-203元人民币。
需要的GPU数量越多,拉开的差距越明显。PSU的挑选是不是比之前想象的复杂一点?
CPU和GPU的冷却对于产热大户CPU和GPU来说,散热性不好会降低它们的性能。
对CPU来说,则标配的散热器,或者AIO水冷散热器都是不错的选择。
但GPU该用哪种散热方案,却是个复杂的事。
风冷散热
如果只有单个GPU,风冷是安全可靠的,但若你GPU多达3-4个,靠空气冷却可能就不能满足需求了。
目前的GPU会在运行算法时将速度提升到最大,所以功耗也达到最大值,一旦温度超过80℃,很有可能降低速度,无法实现最佳性能。
对于深度学习任务来说这种现象更常见了,一般的散热风扇远达不到所需效果,运行几秒钟就达到温度阈值了。如果是用多个GPU,性能可能会降低10%~25%。
怎么办?目前,英伟达GPU很多是针对游戏设计的,所以对于Windows系统进行了专门的优化,也可以轻松设置风扇方案。
但在Linux系统中这招就不能用了,麻烦的是,很多深度学习库也都是针对Linux编写的。
这是一个问题,但也不是无解。
在Linux系统中,你可以进行Xorg服务器的配置,选择“coolbits”选项,这对于单个GPU还是很奏效。
若你有多个GPU, 就必须模拟一个监视器,Tim小哥说自己尝试了很长时间,但还是没有什么改进。
如果你想在空气冷却的环境中运行3-4个小时,则最应该注意风扇的设计。
目前市场上的散热风扇原理大致有两种:鼓风式的风扇将热空气从机箱背面推出,让凉空气进来;非鼓风式的风扇是在GPU中吸入空气达到冷却效果。
所以,如果你有多个GPU彼此相邻,那么周围就没有冷空气可用了,所以这种情况,一定不要用非鼓风式的散热风扇了。
那用什么?接着往下看——
水冷散热
水冷散热虽然比风冷法成本略高,但很适用于多个GPU相邻的情况,它能hold住四个最强劲的GPU保持周身凉爽,是风冷无法企及的效果。