2. 集群硬件选型:NVIDIA GPU选型指南、服务器主板与NVLink拓扑、网络选型

硬件选型这事儿,我做了快十年了。每次新项目启动,总有人问我:“到底买A100还是H100?L40S能不能凑合用?” 说实话,没有标准答案。量化交易对GPU的需求很特殊——既要算得快,又要延迟低,还得考虑成本。今天我就把这几年的经验掰开揉碎,跟你聊聊。

2.1 NVIDIA GPU选型:A100、H100、L40S怎么选?

先看一张对比表,心里有个底:

型号 核心架构 显存 显存带宽 FP16 TFLOPS NVLink带宽 典型功耗
A100 80GB Ampere 80GB HBM2e 2.0 TB/s 312 600 GB/s 400W
H100 80GB Hopper 80GB HBM3 3.35 TB/s 989 900 GB/s 700W
L40S 48GB Ada Lovelace 48GB GDDR6 864 GB/s 182 350W

先说说A100。这卡是上一代旗舰,但到现在依然能打。我有个朋友做高频因子挖掘,8卡A100跑一个回测模型,比之前用V100快了将近4倍。为什么?因为A100的显存带宽2TB/s,对于大矩阵运算来说,带宽就是命。如果你做的是传统多因子模型,或者中等规模的深度学习,A100性价比很高。

H100呢?一个字:猛。FP16算力接近1000 TFLOPS,是A100的三倍多。但注意,这卡功耗700W,散热和供电都得跟上。我在一个项目里遇到过,机房配电不够,8卡H100只能降频跑,性能直接打七折。所以买H100之前,先看看你的电够不够。

L40S是个有意思的选择。它没有NVLink,显存也只有48GB,但价格便宜啊。我建议把它用在推理场景,比如实盘信号生成。训练用H100,推理用L40S,这个搭配我试过,效果不错。不过要注意,L40S的GDDR6显存延迟比HBM高,对延迟敏感的模型慎用。

核心建议:

  • 训练大模型(千亿参数以上):H100,没得选
  • 中等规模训练 + 回测:A100 80GB,性价比之王
  • 实盘推理 + 轻量训练:L40S,省钱利器

2.2 服务器主板与NVLink拓扑

GPU选完了,主板怎么配?这里有个坑,我踩过。

NVLink是NVIDIA的高速互联技术。A100和H100都支持NVLink,但拓扑结构不一样。A100是第三代NVLink,每卡600GB/s;H100是第四代,每卡900GB/s。但关键是,你得看主板支持几个NVSwitch。

我见过一个配置:8卡H100,但只用了2个NVSwitch。结果卡间通信带宽只有理论值的一半。为什么?因为NVSwitch数量不够,导致拓扑成了“菊花链”,而不是全互联。所以我的建议是:8卡集群,至少配4个NVSwitch,才能实现全带宽。

主板选型上,我个人习惯用Supermicro的H13系列或者Dell的R750xa。这些主板对NVLink支持好,PCIe通道分配也合理。注意一点:PCIe 5.0 x16是必须的,别省这个钱。我曾经为了省钱用了PCIe 4.0的板子,结果H100的带宽被卡住,训练速度上不去。

避坑指南:

我曾经遇到过主板BIOS设置不对,导致NVLink无法启用。折腾了两天才发现,是PCIe的Resizable BAR没开。所以拿到新机器,第一件事就是进BIOS,把Resizable BAR和4G Decoding都打开。

2.3 InfiniBand vs RoCE网络选型

网络是集群的血管。量化交易里,多机并行训练和分布式推理都依赖网络。选错了,GPU再强也白搭。

InfiniBand(IB)和RoCEv2是两大主流。IB是专用网络,延迟低、丢包少,但贵。RoCEv2跑在以太网上,便宜,但需要调优。

先看延迟对比:

网络类型 典型延迟 带宽 每端口成本 适用场景
InfiniBand NDR400 0.6μs 400 Gbps 大规模分布式训练
RoCEv2 100G 1.5μs 100 Gbps 中等规模集群
RoCEv2 200G 1.2μs 200 Gbps 中高 高性能推理集群

我个人建议:如果集群规模超过16卡,或者你跑的是千亿参数模型,直接上IB。别犹豫。我见过一个团队用RoCE跑分布式训练,结果因为丢包重传,训练效率只有IB的60%。后来换了IB,效率直接翻倍。

但如果预算有限,RoCEv2也能用。关键是要做好三点:

  • 开启PFC(优先级流控制),防止丢包
  • 使用DCQCN拥塞控制算法
  • 网卡和交换机都支持RoCEv2

注意:

RoCEv2对网络质量要求很高。我曾经在一个机房测试,发现交换机缓存不够,导致RoCE频繁丢包。后来换了带大缓存的交换机,问题才解决。所以用RoCE,交换机别省钱。

2.4 知识体系总览

下面这张图,是我自己总结的选型逻辑。你一看就明白:

GPU集群硬件选型决策树 量化交易GPU集群 训练场景 推理场景 大模型(千亿+) 中等规模 低延迟推理 批量推理 GPU: H100 GPU: A100 GPU: L40S GPU: A100/L40S 网络: InfiniBand 网络: IB或RoCE 网络: RoCEv2 网络: RoCEv2 NVLink: 4个NVSwitch NVLink: 2-4个NVSwitch NVLink: 不需要 NVLink: 不需要

这张图的核心逻辑很简单:先定场景,再选GPU,然后配网络和NVLink。别反过来,否则容易买错。

最后说一句心里话:硬件选型没有银弹。我见过有人花大价钱买H100,结果网络配了千兆以太网,训练效率还不如A100。也见过有人用L40S跑推理,延迟比H100还低——因为L40S的Tensor Core对某些算子优化得好。所以,选型之前,先跑个benchmark,用你的真实模型和数据测一下。这是最笨的方法,也是最有效的方法。

我的经验:

每次选型,我都会准备一个测试脚本,跑三个场景:小批量训练、大批量训练、实时推理。跑完看数据,再决定买什么。别信厂商的PPT,信自己的测试结果。


公众号:蓝海资料掘金营,微信deep3321