昇思MindSpore 2.10版本正式发布,超节点亲和并行协同图算融合模式重磅升级,实现深度优化与效率提升
昇思MindSpore 2.10版本正式发布,超节点亲和并行协同图算融合模式重磅升级,实现深度优化与效率提升
经过昇思MindSpore开源社区开发者们几个月的开发与贡献,现正式发布昇思MindSpore2.10版本。
超节点亲和并行MindSpore HyperParallel,支持Muon+通算优化,实现6倍性能提升,同时激活值重计算与Swap协同升级,突破显存瓶颈,充分释放昇腾算力。 昇腾亲和图模式MindSpore AKG,其中Mfusion图算融合组件化接入Inductor,支持Ascend亲和,获得更高编译加速收益。 在基础框架演进方面,新增mccl集合通信异步初始化能力,提升大规模训练启动效率。 MindSpore Lite能力持续增强,云侧推理模型支持列表全面扩展,新增多模态推理加速插件,实现端到端推理加速。
下面就为大家详细解读昇思MindSpore 2.10版本的关键特性。
——超节点亲和并行MindSpore HyperParallel——
1 支持Muon+通算优化,实现6倍性能提升
随着大语言模型训练规模持续扩大,FSDP(Fully Sharded Data Parallel)已成为缓解显存压力、支撑千亿至万亿参数模型训练的重要分布式并行技术。同时,Muon 优化器得益于其高效率收敛也逐渐成为主流选择。然而,Muon 优化器的 Newton-Schulz 计算需要对完整参数矩阵进行正交化更新,而 FSDP 通常将参数、梯度和优化器状态切分存储在不同设备上,二者在计算粒度和数据布局上存在天然冲突。在大规模集群下,存在全矩阵通信开销高、数据并行域内重复计算严重、Host 侧小算子调度开销大等问题。
基于 MindSpore HyperParallel FSDP2 框架,设计并实现了面向昇腾超节点训练平台的 FSDP-Muon 融合优化方案。该方案针对大规模集群下FSDP+Muon优化器的冗余计算和冗余通信提供多个性能优化手段,包括AllGather+DP去冗余技术、高维参数通信计算去冗余、Newton-Schulz矩阵融合、HSDP(Hybrid Sharded Data Parallel)分组去冗余技术。综合多项优化后,在昇腾超节点512 die集群测试下,千亿级别MoE Muon优化器计算耗时从最初的2700 ms优化至450 ms,性能提升约6倍。
1.1 DP 去冗余/ HSDP 去冗余
核心矛盾:FSDP的参数按行切分机制与Muon优化器Newton-Schulz正交化所需完整矩阵存在根本性冲突。

Muon优化器特点挖掘:如上图所示,Newton-Schulz过程通过AllGather获得所有完整的矩阵,并进行Newton-Schulz计算,多卡之间存在重复计算。
优化思路:减少冗余计算,每张卡只计算部分Param的Newton-Schulz 优化1:HSDP分组去冗余,每个HSDP组内存在一个完整的矩阵副本,副本组内分配计算参数,计算量随副本数线性下降,即下图(1)。 优化2:DP组去冗余,下图(2)中每个HSDP组内有多个DP组,且DP组内含有的矩阵一致,可进一步去冗余优化,即下图(2)。

1.2 极致降显存

如上图所示,控制参数分batch更新,实现中间激活显存可控,显存峰值降低40%,同时实现 HSDP 去冗余的通算掩盖。
1.3 Newton-Schulz的性能优化
在完成 DP/HSDP 去冗余的 Muon 优化器方案实现后,我们通过 Profiling 分析,Newton-Schulz 的计算开销成为了系统的主要瓶颈,针对 Newton-Schulz 计算进一步优化。
1) 高维参数通信计算去冗余优化

如上图所示,无需进行跨卡的全局通信聚合,可直接按本地分片的 Batch 维度独立并行执行Muon 计算,实现了完全的免通信通算去冗余,专家矩阵的绝对耗时由 4.9 ms 大幅缩减至 1.1 ms,耗时骤降约 77.5%。
2)矩阵融合优化

如上图所示,通过在 Host 端构建统一的 Batch 维度,我们将原本零散的海量小矩阵重组为连续的高维张量 B, M, N,从而在底层硬件触发高效的批量矩阵乘(BMM)算子,该优化显著降低了执行延迟。以 74 个形状为 24, 10240 的参数为例,批量执行 Newton-Schulz 迭代的总耗时降至 2.4 ms,远低于优化前逐个参数执行的理论总耗时(74*1.0 = 74 ms)。
参考链接:https://gitcode.com/mindspore/hyper-parallel/tree/master/hyper_parallel/core/optimizer
2 激活值重计算与Swap协同升级,突破显存瓶颈,充分释放昇腾算力
随着大模型规模、序列长度和微批次数持续增长,训练过程中需要为反向传播保留的激活值快速增加,激活显存逐渐成为制约模型规模和训练吞吐的关键因素。传统激活值重计算通过“以算换存”降低显存占用,但固定在反向阶段触发重算,难以充分利用流水线中的空闲窗口;在复杂训练场景中,单一内存优化手段也难以兼顾显存与执行效率。
MindSpore HyperParallel 1.0版本基于昇思MindSpore 2.10版本PyNative模式统一升级激活内存优化能力,将“保留、重计算、换出”纳入同一套声明式策略,并支持重计算任务独立调度。用户可以根据算子计算量、激活大小和调度空窗灵活组合策略,在减少Device显存占用的同时,尽可能隐藏重计算与Host-Device数据搬运开销。
2.1 动态图重计算新增Swap策略,兼顾性能与显存
MindSpore HyperParallel 1.0版本在PyNative模式下支持选择性激活重计算,并将Swap作为与“保存”“重计算”并列的策略。用户可通过统一策略接口,对计算代价高的算子保留结果、对计算代价低的算子执行重计算、对大激活异步换出到Host,无需依赖整图捕获或编译,即可在同一重计算区域内组合使用多种激活内存策略。
该能力无需依赖完整前后向图的统一规划,可直接适配Python动态控制流和动态图原生执行方式,策略粒度更灵活,也更便于接入已有模型代码,三种策略的资源取舍如下图所示。

参考链接:https://gitcode.com/mindspore/hyper-parallel/blob/r1.0.0/docs/guide/activation_checkpoint.md
2.2 函数与模块级重计算抑制,简化配置并降低Host开销
算子级策略适合精细控制激活的保存、重计算与换出,但当用户希望整个函数或模块不参与重计算时,逐一识别和配置内部算子并不方便。MindSpore HyperParallel 1.0版本提供checkpoint_exclude_wrapper,用户可直接从代码组织方式出发,包裹不需要重计算的函数或模块,无需感知其内部包含哪些算子。
该能力在函数或模块边界完成重计算抑制,不依赖算子级Dispatch机制,运行时无需对区域内的算子逐一校验,减少了随算子数量累积的Host检查开销,两种配置方式的差异如下图所示。

2.3 重计算输入支持异步Swap,进一步压缩显存驻留
即使中间激活通过重计算释放,重计算区域的输入仍需一直保留到反向阶段。MindSpore HyperParallel 1.0版本支持将重计算输入异步换出到Host,并在反向使用前预取回Device。数据搬运通过独立拷贝流执行,可与后续计算重叠,从而进一步缩短大输入在Device上的驻留时间。
对于长序列、大 hidden size 或重计算边界输入较大的模型,该能力可在保留重计算收益的基础上继续降低激活显存,重计算输入异步换出与预取的执行时序如下图所示。

2.4 重计算支持独立调度与提前触发,释放 PP 通算重叠空间
在进一步降低显存之外,MindSpore HyperParallel 1.0版本还支持对重计算时机进行独立调度。传统重计算通常由反向传播按需触发,重算时延会直接进入反向关键路径;昇思MindSpore 2.10版本动态图重计算独立调度能力可在正向阶段收集重计算任务,在合适的调度窗口提前触发,并由后续反向阶段复用重算结果。
该能力尤其适用于 PP overlap_b_f 场景。调度器可以在配对的前向计算启动前完成对应micro batch的重计算,避免二者竞争执行资源,同时为前向、反向及专家并行通信创造更充分的重叠空间,传统触发方式与独立调度方式的差异如下图所示。

借助昇思MindSpore 2.10版本动态图能力,MindSpore HyperParallel 1.0版本通过算子级策略、函数与模块级重计算抑制、异步输入换出和独立重计算调度,将激活显存优化从单一功能升级为可组合、可调度的完整能力,帮助用户在不同模型结构与并行策略下,更灵活地平衡显存、算力和Host带宽。
参考链接:https://gitcode.com/mindspore/hyper-parallel
——昇腾亲和图模式MindSpore AKG——
3 Mfusion图算融合组件化接入Inductor,支持Ascend亲和,获得更高编译加速收益
随着AI模型在昇思MindSpore、PyTorch等不同前端框架上演进,如果图融合能力与单一框架内部表示深度耦合,容易带来规则重复建设,也难以复用已经验证的硬件优化经验。围绕这一问题,MFusion将在昇思MindSpore中积累的可复用融合方法与Ascend优化经验,沉淀为独立MLIR组件,形成从组件化接入、Ascend亲和手工融合Pass和后端感知自动融合的完整能力体系,进一步拓展昇思MindSpore融合能力的跨框架复用边界。
3.1 基于MLIR的组件化架构
如下图所示,在PyTorch场景中,MFusion不是另起一个torch.compile后端,而是嵌入Inductor的post-grad图优化阶段。FX图经Torch-MLIR进入MFusion,完成融合与切分后,再以自定义算子形式返回原流水线;未融合区域沿用原NPU后端,融合子图则交由目标后端生成Ascend内核。由此可在保留Dynamo、AOTAutograd和Inductor原有能力的同时,让融合规则和代码生成后端作为独立组件持续演进。

3.2 Ascend亲和的手工融合Pass
MFusion首先通过可解释、可控的手工Pass锁定高价值结构。默认pipeline串联Torch侧和Mfuse侧的融合pattern,并支持自定义 DVM区域标注。在Transformer热点上,当前已覆盖RMSNorm、Add+RMSNorm、LayerNorm、RoPE、GELU、SwiGLU和Mean+Var;围绕MatMul/BMM,则提供Cast与Bias吸收、Transpose吸收、二维BMM降级、K=1改写为Mul以及MatMul—Reshape—Bias重排。各Pass同步检查dtype、shape和数值语义,例如RoPE在BF16存在数值漂移风险时会主动保留原图,避免以融合换取不可控的精度代价。
3.3 后端感知的自动融合
在手工Pass优先锁定高价值结构之后,MFusion进一步以后端感知的自动融合覆盖长尾算子组合。系统先依据算子支持范围、dtype、shape和后端限制筛选候选节点,再通过依赖图搜索、并查集合并与环检测形成合法区域;当整段子图不存在统一的SSA插入位置时,通过动态规划补救切分,并结合Elementwise、Broadcast、Reduce、Reshape和MatMul等计算模式及Ascend启发式规则完成重组与outline,由此形成“确定性规则优先、自动融合补充”的两层优化路径。

如上图所示,实际运行结果显示,在NVIDIA A100 Tensor Core GPU与昇腾Atlas A2训练系列产品的测试环境下,34个在两侧均通过精度验证的TorchBench网络,统一以“昇腾Atlas A2训练系列产品平台内E2E加速比÷NVIDIA A100 Tensor Core GPU平台内E2E加速比”计算,所得比值的几何平均为1.20倍,其中23个网络的比值大于1。在NLP Transformer、Vision Transformer、语音、多模态、经典CNN和生成式网络六类典型网络中,BERT_pytorch、timm_vision_transformer、speech_transformer、torch_multimodal_clip、resnet18和dcgan分别达到4.46倍、2.10倍、1.92倍、1.39倍、1.33倍和1.15倍,六项几何平均为1.84倍。结果表明,在本次测试覆盖的多类网络上,MFusion在昇腾Atlas A2训练系列产品中可以获得较高的编译加速收益。
参考链接:https://gitcode.com/mindspore/akg/tree/master/mfusion
——基础框架持续演进——
4 新增mccl集合通信异步初始化能力,提升大规模训练启动效率
随着大模型训练集群规模持续扩大,CPU集合通信初始化涉及多节点地址同步和拓扑建连,千卡集群这一过程耗时可达分钟级,在同步阻塞模式下Device侧只能空转等待,造成算力严重浪费。
昇思MindSpore 2.10版本新增mccl异步初始化能力,如下图所示,将mccl通信建连放入后台线程执行,主流程无需等待即可继续设备初始化,实现mccl通信建连与设备初始化的并行流水。这一改进在大规模集群场景下能有效降低初始化建链时间,提升Host与Device侧的并行利用率。当真正执行集合通信操作时,框架会自动等待后台线程完成初始化,并内置超时保护机制,保证安全可靠。

——MindSpore Lite能力增强——
5 云侧推理模型支持列表全面扩展,覆盖六大类共100款SOTA模型
模型生态是推理框架落地业务的关键。MindSpore Lite 2.10版本云侧推理模型支持列表持续扩展,覆盖六大类共100款SOTA模型,其中47款已提供完整的转换配置与推理示例,新增Kandinsky-5.0系列、Qwen3-VL Thinking/Instruct全量、Qwen3.5系列、Wan2.2系列、InternVL3_5 Flash系列、Qwen3-TTS/Qwen3-ASR等一批SOTA模型。
值得强调的是,MindSpore Lite 2.10版本云侧推理模型支持列表与多模态推理加速插件形成协同:多模态推理加速插件当前已支持Wan2.1 T2V/I2V系列多卡并行推理加速,后续将基于模型注册机制扩展到更多开源模型。用户在使用云侧推理模型支持列表中的模型时,可结合该插件获得额外的多卡并行与稀疏注意力加速能力。
通过持续扩展的模型支持列表与多模态推理加速插件,MindSpore Lite 2.10为昇腾云侧推理提供了“广覆盖 + 强加速”的端到端方案,协助从模型选型、转换、部署到加速的完整链路在统一框架下高效完成。
6 多模态推理加速能力增强,实现端到端推理加速
随着大模型推理在生产环境的规模化部署,业务方在昇腾NPU上获取极致推理性能时普遍面临挑战:融合算子、稀疏注意力、多卡序列并行等关键加速能力散落在不同实现中,缺乏统一、易用的入口。针对这一痛点,MindSpore Lite 2.10面向昇腾硬件,通过C++自定义算子深度调用昇腾CANN aclnn接口,结合Python层的优化Attention、RoPE实现以及HCCL多卡通信,实现端到端推理加速。
6.1 RainFusionAttention:原生昇腾融合的块级稀疏注意力
视频生成、长序列语言模型等场景下,标准注意力计算量随序列长度二次增长。内置稀疏注意力算子直接封装昇腾CANN原生aclnnRainFusionAttention接口,在保留精度的基础上对注意力计算进行块级稀疏化。完整流程包含Token重排、块级池化、Top-k稀疏Mask生成、aclnnRainFusionAttention调用、逆重排五个阶段,借助token重排与稀疏Mask的协同,即便sparsity=0也能比dense attention更快。为兼顾定制化集成与开箱即用,提供两层接口:rain_fusion_attention为底层算子,sparse_attention为上层封装,补充完整的前后处理逻辑。
6.2 NPU兼容FlashAttention与优化RoPE
针对常用注意力实现做了NPU兼容化处理:FlashAttention按优先级自动选择FA3 → FA2 → NPU原生npu_prompt_flash_attention后端,自动匹配最优路径;RoPE采用float32实运算 + cos/sin表缓存实现,在视频生成模型实测中RoPE耗时降低约88%。
6.3 多卡并行:Ulysses序列并行 + VAE数据并行时间切片
多卡并行提供两类不切分模型参数的并行策略,Ulysses Sequence Parallel (USP) 是面向Transformer自注意力层的序列维度并行,每卡持有完整模型权重,仅在激活上通过all_to_all通信,约束为num_heads可被world_size整除,适合长序列、大batch场景。VAE数据并行时间切片 针对视频VAE因果卷积的跨帧状态依赖,将视频沿时间维切分为重叠帧chunk分发到各卡独立处理,再通过all_gather收集拼接,重叠帧覆盖VAE时间感受野保证拼接一致性。插件采用模型注册机制支持快速扩展:实现boost_xxx(model)函数并在SUPPORTED_MODELS注册类名即可,当前已支持Wan2.1 T2V/I2V系列,通过ParallelManager(model)一行代码即可原地转为USP多卡推理模式。
MindSpore Lite为基于PyTorch接口的云侧推理提供了“原生算子 + 自动并行 + 极简接入”的统一加速方案,通过LiteBoost多模态推理加速插件,用户无需重写模型脚本即可在昇腾NPU上获得融合算子、稀疏注意力与多卡并行的端到端性能收益。