3 V3/R1训练架构的独特优势
DeepSeek 的优势不仅仅来自于其模型架构。从低比特 FP8 训练到All-to-All通信优化,其专用训练框架旨在尽可能提高训练的速度,以最高效率在解空间中找到较优的MoE参数集。
国内很多人在看DeepSeek团队时,更多关注了他们做Training的能力,但实际上DeekSeek的AI Infra能力,特别时软硬件协同优化能力,才是他们超越国内其他大模型团队的关键。
这一架构的核心优势包括:
1)引入了FP8混合精度训练框架,并首次在超大规模大模型训练上验证了这一框架的有效性。通过对FP8低比特计算和存储的支持,实现了训练的加速和GPU内存使用的减少。
2)设计了DualPipe算法来实现更高效的流水线并行,并通过计算-通信重叠隐藏了大模型训练过程中的大部分通信开销。
3)开发了高效的跨节点All-to-All通信内核,以充分利用InfiniBand(IB)和NVLink带宽;对显存使用进行了优化,无需使用昂贵的张量并行即可训练DeepSeek-V3。
3.1 HAI-LLM框架的软硬件协同设计
V3 的训练基于DeepSeek自研的HAI-LLM 框架。HAI-LLM是一个高效、轻量级的训练框架,其设计充分考虑了多种并行策略,包括DP、PP、TP、EP和FSDP的并行模式。

并行模式对比(来源:互联网)
3.1.1 软件层面的并行优化
HAI-LLM框架所作的并行改进(来源:中存算)
| 缩写 | 简介 | DeepSeek所做的工作或优化 |
|---|---|---|
| TP | 张量并行 (Tensor Parallelism):将模型层放置在并行执行计算的多个设备(计算芯片)上,包括逐行和逐列并行, | 将 NVLink Bridge 集成到系统中,在每对 GPU之间建立了 600GB/s 的带宽,增加TP效率 |
| PP | 流水线并行 (Pipeline Parallelism):每个设备(计算芯片)都包含一部分模型层,每个训练批次分为串行的小批次以进行流水线执行 | 通过配置数据并行排队,规避单个节点(服务器)8个GPU共享一个 IB NIC流水线并行 (PP) 期间出现的网络带宽竞争,实现GPU的交替通信和91%的并行效率 |
| FSDP | 全共享数据并行 (Fully Sharded Data Parallel) 基于 ZeRO Stage 3 算法,对模型的参数、优化器状态和梯度分布到不同的设备(计算芯片)上。在正向传播期间,FSDP 执行 allgather作来组装完整的参数,并正向传播完成后释放;反向传播期间,FSDP 执行 allgather获取完整参数,并进行反向梯度计算,然后执行 reduce-scatter以同步所有设备之间的梯度,每个设备只保留部分梯度、参数和优化器更新 | 基于 ZeRO Stage-3 算法实现FSDP。将 allgather 和 reduce-scatter 通信与前向和反向传播计算重叠,拆分反向传播步骤以增强重叠,减少通信量。与 PyTorch 的 FSDP 相比,HAI-LLM 的 FSDP 将训练时间缩短了近一半 |
| DP | 数据并行 (Data Parallelism):模型和优化器的状态在多个设备(计算芯片)之间复制,数据均匀分布给所有设备进行并行计算 | 对PCIe进行工程优化,提升DP |
| EP | 专家并行 (Expert Parallelism):在MoE 训练期间,MoE 模型的不同专家分布在不同的设备(计算芯片)上,由门控单元将输入的Token分配给不同的专家 | 对PCIe进行工程优化,提升EP |
根据DeepSeek的论文,V3 应用了 16 路流水线并行 (PP)、跨越 8 个(服务器)节点的 64 路专家并行 (EP)和 ZeRO-1 数据并行 (DP)。
3.1.2 针对软件并行策略的硬件优化

低成本的万卡集群架构(来源:DeepSeek)
为了配合HAI-LLM训练框架(软件),DeepSeek采用两层Fat-Tree拓扑+ InfiniBand (IB)作为集群架构(硬件)。这一集群架构的核心思路是减少互连层次,降低训练的综合成本。相对DGX-A100 的标准万卡集群三层Fat-Tree的1320个交换机,DeepSeek的同规模集群仅仅需要122台交换机,至少节省了40%的互连成本。
3.1.3 针对硬件架构的软件优化

针对硬件架构优化的HFReduce(来源:DeepSeek)
针对所采用的硬件架构特点,DeekSeek开发了HFReduce(针对不使用NVLink的方案),以执行高效的 allreduce操作。 HFReduce会首先执行节点内 reduce,然后通过 CPU 执行节点间 allreduce,最后将 reduced 数据传输到 GPU 。这样的优化需要DeepSeek团队对硬件互连有非常深刻的理解。
当然DeepSeek团队也开发了基于NVLink的HFReduce with NVLink,在将梯度传递给 CPU 之前,先在NVLink 互连的GPU 之间执reduce减作;当 CPU 返回结果时,会将数据切分并分别返回给 NVLink 连接的配对 GPU,再通过 NVLink 执行allgather。
3.2 FP8 训练框架体系
3.2.1 低比特训练框架的构建

FP8与其他数据格式占据空间对比(来源:互联网)
通常的大模型训练会采用BF16(16位浮点)或FP32/TF32(32位浮点)精度作为数据计算和存储的格式,来确保较高的训练精度。相比之下,FP8占用的数据位宽仅为FP32的1/4,可以有力的提升计算速度,降低对存储的消耗。当然,FP8也存在精度不高,容易导致训练失败的潜在问题。

FP8训练框架局部方案(来源:DeepSeek)
DeepSeek-V3 使用 FP8(8 位浮点数)来提高计算速度并减少训练期间的显存使用量。为了让FP8更好的完成训练,DeepSeek专门设计了针对FP8的训练框架体系。当然,就在撰写本文的时候,微软已经跑通了FP4(4位浮点数)的完整模型训练。
使用FP8框架进行训练的主要挑战在于精度与误差的处理。
DeepSeek为其FP8低比特训练框架做了以下优化:
1)细粒度量化
将数据分解成更小的组,每个组都使用特定乘数进行调整以保持高精度。这一方法类似于Tile-Wise或Block-Wise。对于激活,在 1x128 大小的基础上对计算数据进行分组和缩放;对于权重, 以128x128 大小对计算数据进行分组和缩放。该方法可以根据最大或最小数据调整缩放系数,来更好的适应计算中的异常值。
2)在线量化
为了提高精度并简化框架,该框架在线计算每个 1x128 激活块或 128x128 权重块的最大绝对值,在线推算缩放因子,然后将激活或权重在线转化为 FP8 格式,而不是采用静态的历史数据。相对静态的量化方法,该方法可以获得更高的转换精度,减小误差的累积。
3)提高累加精度
FP8在大量累加时会累积出现随机误差。例如FP8 GEMM在英伟达 H800 GPU 上的累加精度保留 14 位左右,明显低于 FP32 累加精度。以 K = 4096 的两个随机矩阵的 GEMM 运算为例,Tensor Core 中的有限累加精度可导致最大相对误差接近 2%。
DeepSeek将中间结果储存计算升级为 FP32(32位浮点),实行高精度累加,然后再转换回 FP8,以降低大量微小误差累加带来的训练偏差。
4)低精度/混合精度存储与通信
为了进一步减少 MoE 训练中的显存和通信开销,该框架基于FP8 进行数据/参数缓存和处理激活,以节省显存与缓存空间并提升性能,并在 BF16(16位浮点数)中存储低精度优化器状态。
该框架中以下组件保持原始精度(例如 BF16 或 FP32):嵌入模块、MoE 门控模块、归一化算子和注意力算子,以确保模型的动态稳定训练。为保证数值稳定性,以高精度存储主要权重、权重梯度和优化器状态。

细粒度量化与提高累加精度(来源:DeepSeek)
以上这些针对FP8训练的优化设计,都是精雕细作的工作,需要框架设计人员对GPU硬件架构和训练误差具有很强的整合分析能力。从DeepSeek的FP8训练框架来看,这个团队具有很强的技术和工程整合能力,已经不是单纯的大模型算法或AI Infra团队。
3.2.2 对英伟达GPU市场有巨大影响?
2025年1月27日,英伟达股价暴跌近17%,市值蒸发近6000亿美元,创下美国历史上单日最大市值跌幅纪录。AI领域的明星公司普遍遭受重创:博通(Broadcom)下跌17.4%,AMD下跌6.4%。微软下跌2.1%。此外,AI产业链的衍生板块也未能幸免,电力供应商Constellation Energy下跌近21%,Vistra下跌28%。国内很多媒体认为这是DeepSeek的崛起,引起投资者对于英伟达等半导体企业估值过高的担忧。
英伟达估值是否过高不好说,毕竟MoE架构的发展已经展现出“存力重要性优于算力+对存储带宽瓶颈下降”的倾向。但从技术角度看,DeepSeek的大模型目前依然存在对英伟达GPU的路径依赖。
1)目前英伟达仍在低比特计算方面领先。包括DeepSeek使用的FP8和微软使用的FP4,都是由英伟达率先产品化并推向市场的。FP8训练最早也是在英伟达内部开始验证的。英伟达之外,暂时还没有企业有这样的生态推动力和落实能力。
2)MoE模型仍属于大模型演进的常规路径,并不会因为MoE模型的路径切换导致GPU应用不及预期。目前主要的MoE模型依然是基于英伟达生态构建的,在算力单价昂贵、模型性能仍需提升的现在,MoE的应用事实上是基于有限的算力成本,进一步提升通用大模型(以to C为主)性能的有效路径。这个路线早已有之,不管DeepSeek的影响力是否扩大,目前通用大模型都在朝着这个方向发展。过于夸大DeepSeek对AI产业的影响,只会加速美国商务部对DeepSeek的封禁速度,对DeepSeek自身反而不利。
3)DeepSeek使用的一些训练成本优化技术属于定制化技术,其他竞品企业未必有类似的定制能力。例如前面提到的混合精度存储/计算,与模型本身的特征高度绑定,迁移起来并不简单,属于DeepSeek内部的定制化技术,与量化交易中的FPGA优化有原理类似之处。这类定制化技术一般难以简单的复制,其他企业短期内难以复盘,进行规模化成本降低的概率不高。有这个AI Infra能力的早就已经做了,没有这个能力也不会冒着成本不可控的风险冒然进入。
我们认为DeepSeek的V3/R1模型事实上为英伟达GPU开拓了除Llama开源系列Dense模型之外的MoE开源模型新大陆,等同于为苹果的IOS市场增加了新的免费Killer App。
DeepSeek本身对英伟达的股价影响,看起来更像是骆驼背上的最后一根稻草,大概不会超过以下几个因素:
1)美国贸易关税风险。
2)B200/5090不达市场预期的风险。
3)大陆高成本GPU(主要是H100)算力过剩的风险。
4)对大陆禁运加强的风险。
3.3 DualPipe优化
V3/R1的训练框架中引入DualPipe算法以实现高效的流水线并行性。
与现有的流水线并行(PP)方法相比,DualPipe具备以下优势:
1)DualPipe的流水线气泡更少,信道使用效率更高。
2)DualPipe将前向和后向传播中的计算和通信重叠,解决了跨节点专家并行(EP)带来的繁重通信开销问题.
3)在确保计算与通信比例恒定的情况下,具有很好的Scale-out能力。
DualPipe算法将每个数据块分为四个部分:attention(图中ATTN)、all-to-all dispatch(图中DISPATCH)、MLP 和 all-to-all combine(图中COMBINE)。对于后向块,attention和 MLP 都进一步分为后向输入、后向权重。对于一对前向和后向块,针对通信和计算的过程和瓶颈进行优化。DualPipe采用双向流水线调度,同时从流水线发送前向和后向数据,尽可能提高使用率。

DualPipe的流水线(来源:DeepSeek)
3.4 跨节点 All-to-All 通信与显存优化
V3/R1的训练框架还定制了高效的跨节点All-to-All通信内核,以充分利用IB 和 NVLink 带宽,并节约流式多处理器 (SM,(Stream Multiprocessor)。DeepSeek还优化了显存分配,以在不使用或少使用张量并行 (TP) 的情况下训练 V3/R1。
3.4.1 对于SM与NVLink的优化
为了保证 DualPipe的计算性能不被通信影响,DeepSeek定制了高效的跨节点 All-to-All 通信内核(包括 dispatching 和 combining),以节省专用于通信的 SM数量。

传统的基于NVSwitch的All-to-All通信结构(来源:互联网)
通信内核(通信SM控制代码)的实现与MoE 门控算法和集群网络拓扑是按照软硬件协同的思路来进行设计的。具体来说,在集群中,跨节点 GPU与 IB 完全互连,节点内(单台服务器内)通信通过NVLink完成。NVLink 提供 160 GB/s 的带宽,约是 IB 的 3.2 倍 (50 GB/s)。
为了有效利用IB 和NVLink的不同带宽,DeepSeek将每个Token(词元)的分发限制为最多4 个节点,从而减少IB流量限制的影响。 对于每个Token,在做节点间路由决策时,先通过IB传输到目标节点上具有相同节点内索引的GPU;到达目标节点后,再通过NVLink 转发到托管目标专家的特定GPU。通过这种方式,通过IB和NVLink的通信重叠,平均每个Token可以在每个节点选择3.2名专家,而不会产生额外的NVLink开销。
实际算法中,V3/R1只通过路由选择了8个专家,但在保持相同通信成本的情况下,该架构可以扩展到最多13 个专家(4 个节点x3.2个专家/节点)。
DeepSeek还采用了warp(线程束)专用化技术,将20个SM划分为10个通信信道。
1)在调度过程中,(a)IB 发送、(b)IB 到NVLink 转发、(c) NVLink 接收由相应的warp处理。分配给每个通信任务的warp数量会根据所有SM的实际工作负载动态调整。
2)在合并过程中,(a) NVLink 发送、(b)NVLink到IB的转发和累积、(c)IB接收和累积也由动态调整的warp处理。
3)dispatching 和combining kernel都与计算流重叠,采用定制的PTX(Parallel Thread Execution)指令以自动调整通信块大小,减少了对L2缓存的使用和对其他 SM 的干扰。
3.4.2 显存节省技术
为了减少训练期间的内存占用,V3/R1还采用了以下技术节省显存:
DeepSeek采用的显存节省技术(来源:中存算)
| 技术 | 方法说明 | 优势 |
|---|---|---|
| RMSNorm 和MLA Up-Projection 的重新计算 | 在反向传播期间重新计算所有MSNorm操作和MLA Up-Projection,无需持久存储其输出激活 | 以算代存,充分利用GPU内算力充沛但缓存不足的特点 |
| 在CPU内存中保存指数平均数指标(EMA) | 在CPU 内存中保存EMA,并在每个训练步骤后异步更新 | 把EMA从GPU显存占用改为CPU内存占用,释放动态存储空间 |
| 在多标记预测(MTP)中共享嵌入和输出头 | 使用DualPipe 策略,将模型最浅的层(包括嵌入层)和最深的层(包括输出头)部署在相同的PP等级上 | 允许MTP模块和主模型之间物理共享参数、梯度、嵌入和输出头,提升显存效率 |
3.4.3 打破了CUDA生态壁垒?
网上很多人,看到DeepSeek使用了PTX指令,而没有直接使用CUDA进行SM编程,就认为DeepSeek打破了CUDA生态的垄断。
但实际上,
1)PTX指令集也是CUDA生态的一环,是CUDA生态的基础。
2)PTX指令比CUDA更底层,与英伟达的绑定比CUDA更深。
3)CUDA是以PTX指令集为基础构建的,是PTX的外壳和泛化。
4)PTX的移植比CUDA移植挑战更大,难以在国产GPU上直接移植。

CUDA与PTX、SASS的层次关系(来源:互联网)
如果把CUDA理解为C语言的话,PTX相当于CUDA的高级汇编语言,可以在不同的GPU上运行。另一种更加底层的指令集是Streaming Assembly(SASS),与GPU的型号深度帮绑定。无论PTX还是SASS都是英伟达的根基,其他GPU厂家很难插手。
DeepSeek在训练过程中使用PTX,感觉就是量化码农用C语言写交易代码,发现优化效率不够,那么就尝试在C语言中嵌入汇编语言来提高硬件调度效率。难道这就等于打破了C语言的江湖地位?
3.4.4 挖了NVLink的墙角?
有传言说DeepSeek主要使用Infiniband,以EP(专家并行)代替TP(张量并行),挖了NVLink的墙角,从而坚定的认为以PCIe(节点内互连)+IB(节点间互连)就足以进行大模型的训练。
在这里面,NVLink主要负责芯片间(C2C)的通信,而Infiniband负责节点间(服务器间)通信。如果使用PCIe进行C2C通信,带宽远不如NVLink。

NVLink+Infinband互连(来源:英伟达)
规避NVLink的想法很美好,但现实很骨感。按照DeepSeek发表的论文描述,只是在早期没有加入NVSwitch的时候用过PCIe+InfiniBand实现HFReduce,当具备NVSwitch后就立刻增加了HFReduce with NVLink。特别是在V3的论文中,明确写了针对NVLink信道加入了定制PTX优化,好让更多的有效SM参与计算。
这就好比学校的教学高楼里没有大电梯,怕楼梯上孩子太多出危险,就先用“算法+楼梯”代替,拿到“算法许可”的小孩才能到不同楼层去报道。但不能说这样就挖了“电梯”的墙角,卡住了“电梯”的脖子。一个高效的训练系统,依然需要大量的C2C或D2D互连实现更优的拓扑结构。咱不能因为玄奘法师能克服艰难险阻走到古印度取到真经,就认为需要反思火车飞机的重要性。
下篇请看:
陈巍:DeepSeek是否有国运级的创新?从V3到R1的架构创新与误传的万字长文分析(下)162 赞同 · 9 评论文章
