现在,请大家一起来数一下 "1"、"2"。
OK,仅仅 2 秒的时间,一个接近万亿规模的 MoE 大模型就已经掌握了如何解答一道高等数学难题的方法!
而且呢,这个大模型还是完全依靠国产设备进行训练的,整个流程都体现了浓浓的“国产”特色。
这就是华为借助" 昇腾 +Pangu Ultra MoE"这一组合实现的成果——
不仅达成了国产算力与国产模型在全流程上的自主可控训练闭环,还在集群训练系统的性能方面达到了行业顶尖水平。
有多顶尖?来看一组数据:
预训练阶段:昇腾 Atlas 800T A2 万卡集群的 MFU 提升至 41%
后训练阶段:单 CloudMatrix 384 超节点的吞吐量达到 35K Tokens/s
值得一提的是,华为这次公开了一项重要的技术细节。
具体而言,在昇腾 CloudMatrix 384 超节点上,华为披露了高效连接大稀疏比 MoE 强化学习后训练框架的关键技术。
这一举动标志着以强化学习(RL)为核心的后训练进入了超节点集群的新纪元。
不用 GPU 的 " 锻造 " 准万亿大模型的方式
在深入探讨华为 Pangu Ultra MoE 训练系统全流程之前,咱们先回顾一下目前的技术难点。
总体来看,在当前的 MoE 预训练和强化学习后训练过程中遇到的挑战可以归纳为六点:
并行策略配置复杂
面对数据并行、张量并行、专家并行、流水线并行和序列并行等多种策略的选择,加上稀疏激活导致的负载不均衡问题,很难仅凭人工经验找到最佳的并行配置方案。
All-to-All 通信瓶颈
专家并行架构需要进行大规模的 token 路由交换,这不仅占用了大量的网络带宽资源,还会使计算资源长时间处于空闲等待状态,极大影响整体训练效率。
系统负载分布不均衡
从注意力机制中序列长度的变化,到专家激活频率的不一致,再到流水线并行各阶段的负载分配问题,这些多层次的不均衡现象拖慢了整个集群的性能表现。
算子调度开销过高
动态路由机制引入了大量的高频小规模算子操作,增加了系统调度负担,减少了核心矩阵计算的比例,从而显著降低了 NPU 的有效利用率。
训练流程管理繁杂
强化学习后训练涉及多个模型实例和多种训练任务,包括 MoE 大模型的训练和推理阶段,整个流程的复杂性给资源分配和系统调度带来了巨大挑战。
大规模扩展受限
强化学习过程中,训练与推理阶段的参数重新映射机制,以及各计算任务间复杂的数据通信流程,成为限制后训练大规模部署的主要障碍。
即便存在这么多难题,华为在这份技术报告中依旧提出了一套完整的端到端全流程解决方案。
第一步:提高训练集群的利用率
超大规模训练集群的有效部署是提升预训练系统性能的关键。
为此,华为团队通过并行策略智能选择、计算通信深度融合、全局动态负载平衡等技术创新,显著提高了集群整体训练效率。
首先是基于系统建模仿真的智能并行优化。
华为团队采用了如下的系统建模仿真框架,将原本需要大量人工试错的并行策略选择问题转化为精确的自动化搜索过程。
根据昇腾 800T A2 训练集群的硬件特性和约束条件,为 Pangu Ultra MoE 718B 模型确定了最优部署配置:
16 路流水线并行(Pipeline Parallelism)进行模型层间切分
8 路张量并行(Tensor Parallelism)专门处理注意力计算
32 路专家并行(Expert Parallelism)实现专家模块分布式计算
2 路虚拟流水线并行(Virtual Pipeline Parallelism)提升流水线效率
最终实现了与昇腾架构深度适配的最优化部署方案。
△训练系统建模仿真流程
其次是 Adaptive Pipe 前反向通算掩盖。
为了突破并行扩展中的通信瓶颈问题,华为团队创新设计了昇腾网络拓扑适配的分层 All-to-All 通信去冗余机制,结合细粒度前反向计算重叠编排,成功将大规模 MoE 训练中的专家并行通信开销降至接近零暴露(
层次化专家并行通信:华为给出了与昇腾训练集群拓扑深度适配的多级通信策略。首先在节点间进行去冗余的 token 收集操作,避免相同 token 在低带宽的跨节点链路上重复传输;随后利用节点内高带宽优势,通过 All-to-All 通信实现 token 的冗余分发。这一分层设计显著提升了专家并行的整体通信效率。
自适应细粒度前反向掩盖:针对分层专家并行通信特点,设计了基于虚拟流水线并行(VPP)的细粒度前反向重叠掩盖策略。相比业界 DualPipe 掩盖方案,该策略将权重内存占用减少一半。通过进一步拆解 MLP 模块计算流程,充分利用分层专家并行通信中各级带宽相对独立的特性,实现算子执行顺序的自适应调优,最终将专家并行通信几乎完全隐藏(未掩盖比例仅为 2%)。
最后是EDP Balance 全局动态负载均衡。
对于 MoE 模型,随着模型规模和集群规模的增长,专家计算、注意力计算以及各层间的负载不均衡问题相互叠加并被显著放大。当多种性能瓶颈同时出现时,通信同步等待会在系统中传播扩散,造成整体性能的严重恶化。
华为团队采用系统性的分析方法,深入剖析专家并行(EP)、数据并行(DP)、流水线并行(PP)各通信域中潜在的负载均衡挑战,提出了 EDP 全局负载均衡优化策略。
这个策略不仅通过专家负载预测和动态调节机制(如下图)实现设备间计算负载的精确平衡,还通过注意力数据重排技术进一步优化了数据并行域间的负载分布效果。
此外,团队将虚拟流水线并行(VPP)机制与硬件规格特点相结合,设计了最优混合并行架构,有效缓解了模型各层间计算负载分布不均的问题,大幅提升了整体训练效率。
△基于专家动态迁移的 EP 间负载均衡整体框架图第二步:释放昇腾单节点的算力
在昇腾超大规模集群优化取得突破性进展之后,华为团队将优化重点转移到底层算子计算效率的深度挖掘。
这一阶段的核心工作围绕昇腾架构深度适配的训练算子加速展开,通过减轻 Host 资源瓶颈以及实施内存优化策略,成功将微批处理规模(MBS)提升至原来的两倍。
同时团队还对算子调度下发链路进行了协同优化,最终实现了昇腾单节点算力的全面释放。
华为团队的 " 第二步 ",同样包含三个部分;首先就是昇腾亲和的训练算子加速。
在大模型训练计算过程中,FlashAttention、MatMul 以及 Permute/Unpermute 等向量操作算子的执行时间占据了算子总计算耗时的四分之三以上。
针对这些关键算子类型,华为团队充分利用昇腾微架构特性,通过算子流水线排布优化和数学等价冗余计算消除等核心技术手段,实现了训练算子性能的显著跃升。
其次是Host-Device 协同的算子下发优化。
针对同步型间歇性 Host-Bound 和系统性持续性 Host-Bound 问题,华为团队充分发挥昇腾 + 鲲鹏异构系统协同优势,构建了分层优化体系来实现高效算子调度:
对于同步型 Host-Bound 问题,不仅有效消除了同步操作引发的 Host 资源瓶颈,在无法完全规避同步的场景下,还通过优化鲲鹏处理器的算子下发与调度策略,显著降低了同步后的 Host-Bound 开销。
对于系统性 Host-Bound 问题,则采用增大微批处理规模(MBS)、鲲鹏 CPU NUMA 亲和性优化等多维度协同手段,大幅提升算子下发效率。
通过算法与系统的深度协同优化,华为团队成功将 MoE 模型训练中的 Host-Bound 占比控制在 2% 以下,为超大规模模型训练探索出了全新的技术范式。
最后是Selective R/S- 精准的内存手术方案。
华为团队构建了一个精密的内存优化框架:以丰富多样的通用化重计算策略和 Swap 机制作为 " 精密工具库 ",涵盖从模块级到张量级的细粒度优化选项;配合精心设计的自适应内存管理机制作为 " 智能调度平台 "。
这个
以上就是每 2 秒吃透一道高数大题!华为终于揭秘准万亿 MoE 昇腾训练系统全流程的详细内容,更多请关注php中文网其它相关文章!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号