Insights into DeepSeek-V3: Scaling Challenges and Reflections on Hardware for AI Architectures
Chenggang Zhao, Chengqi Deng, Chong Ruan, Damai Dai, Huazuo Gao, Jiashi Li, Liyue Zhang, Panpan Huang, Shangyan Zhou, Shirong Ma, Wenfeng Liang, Ying He, Yuqing Wang, Yuxuan Liu, Y. X. Wei
cs.DC, cs.AI, cs.AR
2025-05-14
DeepSeek用2048张NVLink带宽被砍半的H800训练671B的V3,每token只激活37B。MLA把KV缓存压到每token 70KB,轻量MTP把生成速度提高到约1.8倍,对照72B稠密模型更省算力。
HBM容量每年涨不到50%,模型显存需求每年涨十倍以上。DeepSeek用2048张被砍了NVLink的H800训出671B的V3,每token只激活37B。这篇ISCA 2025论文不复述技术报告里的结构细节,从硬件约束反推模型该怎么改,以及下一代芯片该补什么。
H800节点内NVLink从900 GB/s砍到400 GB/s。DeepSeek给每张卡配一张400G InfiniBand网卡,用节点外带宽补节点内缺口。整篇的设计选择都围着这条带宽差转。
三条主线:少存、少算、少等网络。
MLA把所有注意力头的KV压进一个低维潜向量再缓存。推理时只存这份潜向量,不存每头一份KV。对比GQA路线的Qwen2.5-72B(每token 328 KB)和LLaMA-3.1-405B(516 KB),V3只要70 KB,分别是它们的1/4.7和1/7.3。
MoE侧沿用DeepSeekMoE。V3总参671B、激活37B,每token训练开销约250 GFLOPS;同设定下72B稠密模型要394,405B稠密要2448。专家并行的all-to-all走IB,节点内转发走NVLink。H800上scale-up和scale-out带宽大约4:1,所以门控改成节点受限路由:256个路由专家按节点分组,每个token最多落到4个节点,先IB送一次、再NVLink分发,避免8个专家散到8个节点把IB打满。
训练走细粒度FP8:激活按1×128 tile量化,权重按128×128 block量化。先在16B和230B的V2上做消融,相对BF16精度损失低于0.25%。推理侧加一层轻量MTP做投机解码,第二个后续token接受率80%到90%,生成速度约1.8倍。
集群网络用八平面两层胖树替代三层胖树。每张GPU-NIC对进一个平面,理论上两层就能撑到约1.6万卡。受出口管制,实际只部署了两千多卡。
MLA的显存账最硬:70 KB/token对328 KB和516 KB。算力账同样清楚:671B稀疏模型每token 250 GFLOPS,低于72B稠密的394。
推理上限被网络卡住。按每卡一个专家、每步约32 token、CX7 400 Gbps估算,两次all-to-all约121 μs;双微批重叠后61层合计约14.8 ms TPOT,理论约67 token/s。若换成GB200 NVL72的900 GB/s单向带宽,通信掉到6.7 μs,理论TPOT 0.82 ms、约1200 token/s。论文自己写明这是理想上界,小batch下GPU效率会塌。
实测上,多平面胖树和传统多轨胖树的NCCL all-to-all几乎打平。2048卡训V3时两者差异落在测量误差里。CPU侧64B小包延迟:同叶IB 2.8 μs、跨叶3.7 μs,RoCE是3.6 μs和5.6 μs。
| 对照 | 指标 | 数字 |
| V3 MLA vs Qwen2.5-72B GQA | KV/token | 70 KB vs 328 KB |
| V3 vs LLaMA-3.1-405B | KV/token | 70 KB vs 516 KB |
| V3 vs 72B稠密 | 训练FLOPs/token | 250 vs 394 GFLOPS |
| MTP | 生成速度 | 约1.8× |
| FP8 vs BF16(V2 16B/230B) | 相对精度损失 | <0.25% |
这是一份能直接改集群采购单和模型拓扑的工程备忘录。MLA告诉你长上下文的瓶颈在KV不在权重;节点受限路由告诉你,专家数必须跟节点带宽比绑在一起设计。FP8能训,前提是细粒度缩放和高精度累加,Hopper Tensor Core只保留13位尾数、累加到所谓FP22,DeepSeek靠软件补。
对做推理的人,MTP的1.8倍比再堆一张网卡便宜。对做芯片的人,清单更具体:Tensor Core要原生吃分组缩放因子,scale-up和scale-out要收进同一套编程模型,通信协处理器要把转发、reduce、类型转换从SM上卸下来。训练时H800最多20个SM被通信占掉。
LogFMT把激活映到对数空间,8 bit精度优于E4M3/E5M2,10 bit接近BF16 combine。编码解码和all-to-all融合后开销50%到100%,Hopper带宽和寄存器扛不住,最终没用。
多平面在ConnectX-7上做不到理想形态:跨平面还要节点内转发,推理多一截延迟。理论67 token/s和1200 token/s都是通信完全被计算盖住的上界,线上长上下文MLA会占满时间。FP8消融停在230B,671B全量没有单独对照。节点受限路由把专家选择绑死在机柜拓扑上,换网络就要改门控。