英伟达的客户当然不是傻瓜:22是3.6的6.1倍
表面上看,这只是一个HBM容量从288GB下降到192GB的问题。但实际上,它改变的是一个更加重要的“算力效率和使用率”问题:
一个越来越大的AI模型,到底应该尽可能地待在单颗GPU自己的HBM里,还是被迫拆分到多个GPU之间?被拆分到多个GPU会带来什么问题?
这两个方案的差别,远远超过“288GB和192GB相差三分之一”这么简单。因为Rubin的HBM4本地传输带宽高达22TB/s(如果用的是HBM4E则是32TB/s),而GPU之间的NVLink 6传输带宽仅仅只有3.6TB/s。
也就是说:
HBM4的传输带宽,是NVLink GPU-to-GPU传输带宽的约6.1倍。
举例,如果是这一代的Vera Rubin NVL72机柜,一个250GB的模型可以完整放进其一颗GPU的本地HBM,因为Vera Rubin NVL72机柜每颗GPU的本地HBM是288GB,显著大于250GB的模型。
但如果是下一代的Rubin Ultra,按照SemiAnalysis的说法,单颗GPU的HBM被下调到192GB。那么,一个250GB的模型就不得不跨GPU分配,也就是说,它是在把原本可以在22TB/s本地HBM中完成的数据访问,部分转移到了只有3.6TB/s带宽的GPU与GPU间的互联上。
这当然会带来巨大的、严重的问题。
一个250GB的模型,恰恰是最简单、最现实的例子。这在今天的AI世界里早已经不是什么不可思议的模型规模,未来则会越来越普遍。
如果单颗GPU拥有288GB HBM,那么事情非常简单,250GB的模型可以完整放进一颗GPU的本地HBM里,然后,模型运行过程中,大部分权重访问都可以发生在:
GPU → 本地HBM
这是一条约22TB/s的高速通道。
而如果Rubin Ultra机柜的单颗GPU只有192GB HBM,那么,250GB模型就放不进去了。只能GPU-A放192GB,GPU-B放剩余58GB,于是原本的“单GPU→本地HBM”计算变成:
双GPU、跨GPU计算,而问题就从“内存容量不足”正式升级成了“内存和计算都需要跨GPU协调”。
这时候,一个非常残酷的数字对比出现了:
22TB/s vs 3.6TB/s
两者相除是6.1倍,这也就是说:
GPU访问自己的HBM,传输带宽大约是通过NVLink访问另一颗GPU的6.1倍。
这当然不是一个小差异。所以,“把模型拆到两个GPU”绝不是免费的午餐。GPU-A在计算过程中如果需要GPU-B上的数据,就必须如下:
即“GPU-A → NVLink → GPU-B HBM”,而不是“GPU-A → 自己的HBM”。于是,22TB/s的本地内存通讯就变成了3.6TB/s的跨GPU系统通讯,GPU之间的慢速通讯让GPU与HBM的高速通讯成为了一个摆设,冗余的花架子。
这就是Rubin Ultra降为192GB HBM真正的代价。
最重要的问题是,模型并不是“偶尔”访问一次远程数据。如果只是启动的时候搬一次数据,问题其实并不大。真正麻烦的是现代AI模型的计算模式,尤其是MoE、KV Cache、Long Context,这些计算应该尽量多在单颗GPU与自己的HBM里传输,尽量少的在GPU之间进行数据交换。
这个时候,NVLink的传输带宽就直接决定了模型的有效吞吐能力。
举一个极其简单的例子,就可以理解问题有多严重。
假设某一层模型GPU计算需要100微秒,如果全部数据都在本地HBM,100微秒结束。而现在由于模型被拆到多个GPU,需要跨GPU通信。假设通信需要50微秒,那么整个过程变成100 + 50 = 150微秒。
理论计算能力虽然翻倍了,但实际效率已经下降,有效计算效率剧烈下降到67%(100 / 150 = 67%)。
这也就是说:
你增加了一颗GPU,却不能获得完整的第二颗GPU的计算能力。这就是“尽管GPU越来越多,但有效算力不一定线性增加”。
Long Context会让这个问题更加严重,因为Long Context增加的是KV Cache。哪怕一个模型即使权重只有150GB,192GB HBM看起来已经足够。
但是如果Context从128K增长到1M或者更高,KV Cache就会迅速膨胀,“Model Weight + KV Cache + Runtime”于是最终超过192GB。
于是Rubin Ultra又必须跨GPU通讯。
模型参数量没有增加,但仅仅因为Context越来越长,192GB HBM就不够了。这个时候,如果高并发Inference再同时运行多个用户,每个用户10GB,192GB HBM更是远远不够了。
这就是为什么说“HBM容量”本身就是计算能力的一部分。
这也解释了为什么英伟达过去一直在疯狂增加HBM,从H100到H200,再到Blackwell、Rubin,NVIDIA一直在提高HBM容量和HBM带宽。
所以,SemiAnalysis这个报告其实在讲,HBM供应已经成为限制GPU出货量的重要瓶颈。从288GB下降到192GB意味着,同样1TB HBM,如果每颗GPU使用288GB对应约3.5颗GPU;如果每颗GPU使用192GB对应约5.2颗GPU。
所以,SemiAnalysis认为英伟达就是想卖更多的GPU。
但英伟达的客户不是傻瓜,他们都知道,NVLink永远不能替代HBM,而且差距甚至还在拉大(HBM4E有更大的传输带宽)。
如果英伟达真这么干,英伟达的竞争对手谷歌TPU、AMD会笑到有多开心?当然,这也再一次证明了存储的供应与需求刚性。
(全文完)