16张B200才能跑的Kimi K3,8张AMD就搞定了:CUDA的护城河终于出现了缺口
16张B200才能跑的Kimi K3,8张AMD就搞定了:CUDA的护城河终于出现了缺口
一个让NVIDIA不得不慌的数字
Wafer AI 最近干了一件很有意思的事——他们把 Kimi K3(2.8万亿参数、百万Token上下文)部署到了 AMD MI355X 上。
结果是:原来需要 16 张 NVIDIA B200、横跨两台服务器才能跑的大模型,在一台配备 8 张 MI355X 的 AMD 服务器里就装下了。
而且不只是”装下了”。
在输入1024 Token、输出400 Token的测试中,MI355X 跑出了 952 Token/s 的总吞吐量,单用户生成速度 118 Token/s。按单节点计算,它的吞吐量是16卡B200双节点方案的 3.8 倍。
性价比方面:MI355X 每美元提供约 48 Token/s,B200 约为 7 Token/s。
是的,你没看错——48 vs 7,差了将近 7 倍。
显存开始比算力更重要了
为什么 AMD 能赢这一局?答案不在算力,在显存。
Kimi K3 有 2.8 万亿参数,仅模型权重就需要超过 1.5 TB 显存,还没算百万 Token 上下文需要的 KV Cache。一台8卡B200服务器,每张卡 192 GB 显存,总容量约 1.5 TB——刚好只能放下权重,KV Cache 根本没地方放。
所以 B200 必须用两台服务器、16 张 GPU。
而 MI355X 每张卡 288 GB 显存——和 NVIDIA B300 同级。8 张合计约 2.3 TB,一台服务器就够了。
这不仅仅是省了一台服务器的钱。
模型跨节点运行时,每生成一个 Token 都可能需要通过网络同步数据。即使使用约 195 Gb/s 的 RoCE v2 网络,跨节点通信仍然会拖慢解码速度。MI355X 靠更大的显存,把整个模型留在了一个节点里,跨节点通信的开销直接归零。
这就是硬件层面的”降维打击”——你算力再强,卡插得再多,装不下就是装不下。
更意外的是:ROCm终于没掉链子了
长期以来的常识是:AMD 硬件不错,但软件(ROCm)是灾难。同一套模型在 CUDA 上直接跑,在 ROCm 上要改框架、补算子、重写内核。
但这次 Kimi K3 的情况不同。
AMD 提供了接近首发同步的支持。Wafer 表示模型基本可以直接在 MI355X 上运行,后续工作主要集中在小部分兼容性问题和性能优化上。
唯一遇到的一个比较”经典”的问题是:推测解码环节在 ROCm 上编译通过但运行时挂掉了——因为 ROCm 分支里少定义了一个 top_k_renorm_prob 函数。
但这也不是什么大问题。Wafer 用了一个普通的 PyTorch 函数补上了这段逻辑,不需要手写 GPU 内核,也不需要重新设计推测解码系统。
修复后,推测解码让单路性能提高约 2.2 倍。
这标志着 ROCm 的成熟度在肉眼可见地提升。AMD 的 CEO 苏姿丰押注的”更大显存 + 快速追上来的软件栈”策略,开始兑现了。
当然,并非一切完美
MI355X 也有它的软肋:首字延迟(TTFT)。
面对一段约 17.2 万 Token 的冷启动预填充任务,MI355X 需要约 51 秒,而 B300 只需要约 23 秒。
原因也很简单粗暴:Kimi K3 在 8 路张量并行配置下,每张 GPU 会分到 12 个注意力头。而 AMD 高速 MLA 预填充内核只支持 4、8 或 16 的倍数——12 不对齐。
解决方案?朴素的”补零”:把 12 个注意力头补到 16 个,调用现成的高速内核,算完再取回真正需要的 12 个。不修改模型结构,不写新内核,只补了四个零。
优化后,AITER MLA 内核的稳定预填充速度达到约 1.3 万 Token/s,比原来的回退路径快了 2-3 倍。
这件事非常有代表性:AMD 和 NVIDIA 之间看起来很大的软件差距,有时并不是底层能力不足,只是现有高速内核暂时没有覆盖某种新模型形状。
别急着说”CUDA要亡”,但缺口确实出现了
一次测试当然不能证明 AMD 已经全面追上 NVIDIA。B300 的绝对性能依然领先(1568 Token/s vs 952 Token/s,约 1.65 倍),ROCm 的开发者生态也仍然不如 CUDA。
但趋势线正在发生变化。
当模型进入万亿参数时代,一台服务器装不下时,显存容量就不再是参数表上的数字。它会直接影响通信成本、部署复杂度和最终吞吐量。AMD 给单卡配置更多 HBM 的策略,正在从”差异化”变成”系统性优势”。
如果 AMD 能继续提升 ROCm 的稳定性、扩大高速内核的形状支持,并为新模型提供更及时的首日适配——数据中心就必须认真考虑这些 GPU。
价格更低,显存更大,性能够用,软件也不再需要折腾几个月。
CUDA 的护城河还很宽。但在 288 GB 显存和新模型装不进单节点的压力下,墙上已经出现了一道裂缝。
而且,这道裂缝不会自己合上。