实验室GPU服务器的选购

2023年8月从浙大访学回兰以后,为了建立自己的软件作坊,我需要购买一台能用于深度学习的GPU服务器。受限于经费,这台服务器必须价格足够便宜,并满足需求。为了少走弯路,为此将选购时的心得体会总结如下。

主要需求

  • 我的主要需求用于Nerf等较小规模深度学习模型的开发。兼顾stable diffusion等模型的推理。语言大模型的微调、推理均不是目标。
  • 经费敏感。

显卡对比

之前在浙大使用的是8卡3090的服务器。但是多卡的调度比较麻烦,如果可以按精度分配的话还好,不然就得改代码。所以只有大佬才能同时把8卡都用上。并且搞深度学习及相关软件开发,性能瓶颈是整个系统(影像条件包括决策、代码水平、算法、物理环境等等),因此即使多张A100也不能线性提高性能。而作为小微团队经费有限,出于预研&学习用途,我主要考虑的是双卡4090(24G显存)或者单卡RTX 6000 ADA (48G显存)这样的工作站。

网上搜了一下单张RTX 4090 24GB 与 RTX 6000 ADA 48GB的性能对比结果:
  • 文生图推理:stable diffusion 炼丹速度无差异。
  • 语言模型微调:ChatGLM-6B ptuning 微调 ,--max_source_length 256 --max_target_length 256参数,未见明显差异,但RTX 4090 24GB可以用到400W功耗,速度略快,非常静音;RTX 6000 ADA 48GB 的TDP只有300W,速度略低。
  • 语言模型训练:MOSS全参数调试,RTX 4090 24GB 显存不足,失败;RTX 6000 ADA 48GB WSL爆64GB内存。
  • 游戏性能: RTX 6000 ADA略弱于4090。RTX 6000 ADA是专业图形卡,更适合制图和3D渲染,而非游戏。
  • 价格:4090 约13000元, RTX 6000 ADA约48000元(2023年7月末京东价格)

综上,作为性价比优先的小微团队,RTX 6000 ADA的价格够我买双4090整机,而性能除了48G显存可以在一些调试工作上简单一点外,其他都不能打。因此我的最优解只能是4090了。接下来的问题是,该用单4090高性能台式机还是双4090服务器?

双卡or单卡的抉择

单4090高性能台式机倒是很好配,网上有N多13900K+4090的豪华游戏主机配置,照着抄基本没问题。但是双4090服务器就比较难配置。主要问题是,要让两个4090性能跑满,需要主板有两个PCIE4.0*16的插槽,并且CPU也要有足够的PCIE通道数。显然一般i7, i9只有20个PCIE通道的都不能充分发挥双显卡的实力。想要完整发挥实力,必须买服务器的CPU,它们通常都有40个或更多的的PCIE通道。

网上查阅大量资料后,双显卡性价比较高的配置有两个:一是使用服务器常用给的X99系列主板配e5v3系列CPU,双显卡64G内存价位大约在4W左右。二是配置是使用intel X299系列主板配9800X之类的CPU,这是间于服务器和个人高性能工作站之间的一个配置形态,价位也是大约4W左右。

但是X99系列方案一般得用洋垃圾(美国那边退役下来的服务器配件)。洋垃圾的质量一方面缺乏保证,另一方面只能用落后一代的内存、主板配置。而X299的需求定位有点不上不下,intel自2020年以后已经放弃开发新品,后续只有洋垃圾用。基本上这么配下来的服务器功能单一,其他功能有限,噪音较大(一般只能用涡轮显卡噪音如同直升飞机起飞),升级潜力约等于没有,只适合应急使用。但问题是我现在真的有很多急需要应付吗?

此外还有一种思路是普通PC主板接双显卡方案。但正如上文所说的,一般个人电脑用的i7, i9 CPU最多20个PCIE通道,即使主板有双PCIE4.0*16插槽,也只能让两个显卡以PCIE4.0*8的方式降低数据交换速率运行。何况市面上大多消费级主板只有一个PCIE4.0*16插槽 + 1个PCIE4.0 *4 插槽,这会让第二个显卡数据交换速率低很多。同时,现在的显卡都又大又厚,通常达到了3槽宽,想装下两个大显卡的大主板市面上也比较难找,即使勉强装下散热也是个大问题。要么放弃普通风扇显卡上噪音起飞的涡轮卡,要么就得上又贵又容易不得善终的水冷卡,要么就得面对如同烤箱的机箱。而且4090也没有了交火、nvlink之类的配置,以至于双4090连打游戏也缺乏实际价值。总之,普通PC主板接双显卡的方案,受到插槽、显卡大小、散热等多方面限制,不论怎么选择都是一种不上不下的配置。这方面B站有个装双3090炼丹炉的视频,很好的说明了这一点。

目前我面临的项目很多可以通过租用GPU的平台来做。之所以要买硬件设备,主要还是考虑到自己的环境使用可以更加随意和可控。考虑到现在本团队对于深度学习还处于入门状态,其实真正显卡跑训练或推理的时间很少,大多数时间都会花在开发环境配置、代码调试等工作上。所以一方面拥有自己的显卡是必要的(以保证随时可用),另一方面也没必要配置太多显卡(因为用不上)。

此时我已经完全倾向于单卡4090的配置了。后来在跟家里长辈概括地说起此事,人家建议不易超前配置过多资源以免浪费。我考虑再三,确实如此。最终,我决定只买一台单卡4090的高性能台式机。这样偶尔还能打打游戏。提升一下显卡利用率(笑)。

最终配置

最终主机配置如下,总计消费26700元。最后感谢雷浩同学组装电脑。

 

机箱 九州风神(DEEPCOOL)魔方CH510数显机箱(温度显示屏/磁吸防尘网/钢化玻璃侧板/双360水冷/支持Type-C) 428 1
散热 瓦尔基里(VALKYRIE)GL360 VK 一体式CPU水冷散热器 多平台扣具 支持LGA1700 ARGB光效 铝质冷头 729 1
内存 芝奇(G.SKILL)64GB(32Gx2)套装 DDR5 6000频率 台式机内存条-幻锋戟RGB灯条(黯雾黑)/C36 1499 1
电源 振华(SUPER FLOWER)额定1300W LEADEX VII 1300W金牌全模 ATX3.0电源 支持4090显卡 十年保固 1599 1
机箱风扇 利民(Thermalright)TL-B12 EXTREM 12CM 工业级风压扇3150转速PWM 双滚珠轴承 三次元动平衡 599.4 6
风扇电源集线器 佳翼(JEYI)台式机主板4PIN风扇转接口延长线 一分四 FAN14 39.8 2
显卡 微星(MSI)RTX 4090 超龙白色魔龙X电竞游戏直播专业设计智能学习台式电脑独立显卡 4090魔龙 24G【经典旗舰】 13599 1
主板 Asus/华硕 ROG MAXIMUS Z790 HERO 主板 M15H APEX 13900K 全新 2618 1
CPU 盒装CPU I9 13900K/KF 4095 1
固态硬盘 SOLIDIGM P44 Pro 2TB 高性能版SSD固态硬盘 M.2接口(NVMe协议 PCIe4.0*4) SK海力士 1039 1
固态硬盘 致钛tiPlus 7100 1TB 449 1

半年后回顾

  1. 实践证明,“ 不易超前配置过多资源 ”的理念是正确的。该主机购买至今完全满足了我们的需求,因此确实节省了经费。虽然有人说如果我买两张卡,那么在2023年10月左右的显卡涨价风波我还能卖卡赚钱,但因为工作性质问题,我估计即使我有两张卡我也不会卖。因此所谓赚不赚钱。因此整个购物我是满意的。
  2. 显卡利用率确实低。实际显卡跑训练或推理的时间约占5%,开发环境配置、代码调试等工作花费的时间约占95%。如不是我偶尔玩玩铁甲雄兵和城市天际线2,显卡利用率还会更低。
  3. 显卡利用率低并不意味着显卡没有用。有这么个硬件在,令我和学生心里有底,极大地增强了自信。并且在后续项目中,确实训练出了想要的模型。