已开启
[Feature]: 基于FSDP2后端训练MM大模型 #369
yeqm创建于  5月18日
yeqm成员
5月18日 创建

提交提案之前,请先检索仓库内是否已有相同的提案,如已有请在同一提案中进行讨论。

💻 需求背景、当前现状、期望实现的功能内容、具体的设计方案、以及测试方案

基于MindSpeed MM开放仓库的FSDP2源码,补齐模型的端侧功能。

本期任务的具体信息如下:
(1)模型名称:magistral-lora
(2) MindSpeed MM开放仓库的模型源码链接:
https://gitcode.com/Ascend/MindSpeed-MM/blob/master/examples/magistral-2509/finetune_magistral_2509_lora.sh
(3) 开发平台:Atlas 800T A2或者A3

一、任务交付件
本期任务为基于MindSpeed MM开放仓库代码进行功能扩展,请合入开发代码。将megatron-FSDP2后端的模型迁移到仓上纯FSDP2分支。主要开发点如下:
(1) 模型训练脚本和yaml参数配置
(2) 模型优化实现
特性:
需要适配仓上当前现有特性,如CP,EP,chunkloss,recompute,async activation offload等,在开启特性后能体现出显存优化或性能优化,并确保精度对齐

二、验收标准:
1)精度/性能要求
精度:
对比megatron-FSDP2后端训练2000步平均误差小于2%
性能:
不低于megatron-FSDP2后端性能
2)实践文档:
开发模型实践1篇,性能优化实践1篇
3)任务完成标准
本次任务完成标准为:
精度/性能(根据实际要求)达标,PR完成合入,实践文档提交到仓库issue。

PR 合入
本地完成测试验证后,向MindSpeed-MM的main分支发起PR。

对接人
待补充

欢迎加入社区,感谢您对社区的贡献 🎉!

替代方案

补充说明

欢迎加入社区,感谢您对社区的贡献 🎉!

提交提案之前,请先检索仓库内是否已有相同的提案,如已有请在同一提案中进行讨论。

💻 需求背景、当前现状、期望实现的功能内容、具体的设计方案、以及测试方案

基于MindSpeed MM开放仓库的FSDP2源码,补齐模型的端侧功能。

本期任务的具体信息如下:
(1)模型名称:magistral-lora
(2) MindSpeed MM开放仓库的模型源码链接:
https://gitcode.com/Ascend/MindSpeed-MM/blob/master/examples/magistral-2509/finetune_magistral_2509_lora.sh
(3) 开发平台:Atlas 800T A2或者A3

一、任务交付件
本期任务为基于MindSpeed MM开放仓库代码进行功能扩展,请合入开发代码。将megatron-FSDP2后端的模型迁移到仓上纯FSDP2分支。主要开发点如下:
(1) 模型训练脚本和yaml参数配置
(2) 模型优化实现

二、验收标准:
1)精度/性能要求
精度:
对比megatron-FSDP2后端训练2000步平均误差小于2%
性能:
不低于megatron-FSDP2后端性能
2)实践文档:
开发模型实践1篇,性能优化实践1篇
3)任务完成标准
本次任务完成标准为:
精度/性能(根据实际要求)达标,PR完成合入,实践文档提交到仓库issue。

PR 合入
本地完成测试验证后,向MindSpeed-MM的main分支发起PR。

对接人
待补充

欢迎加入社区,感谢您对社区的贡献 🎉!

替代方案

补充说明

欢迎加入社区,感谢您对社区的贡献 🎉!

likedislike
Yyeqm成员
5月18日 添加了label:feature
yeqm成员
5月18日 评论:

👋 您好,欢迎向 MindSpeed MM 提交 Issue!

我们已收到您的反馈,感谢你对开源社区的支持。🎉

📅 处理时效: 维护团队将在 24 小时内 查看并回复您的问题(工作日)。

🚨 紧急联系: 如果您的问题非常紧急,可通过以下方式联系我们:

💬 微信: WeChat

请确保 Issue 描述清晰,包含复现步骤和日志,这将帮助我们更快定位问题。谢谢!

likedislike
Ronald1995
6月11日 评论:

/label add good-first-issue

likedislike
ascend-robotascend-robot成员
6月11日 添加了label:good-first-issue
jacky_leeie
6月25日 评论:

认领这个任务

likedislike
Louis Victor Leborgne
Louis Victor Leborgne
6月25日 评论:

认领这个任务

likedislike
Ronald1995
6月26日 评论:

认领这个任务

@jacky_leeie

欢迎认领任务,请参考https://gitcode.com/Ascend/MindSpeed-MM/issues/356 社区任务池明确该任务的:

  • 完成的截止日期
  • 开发进展反馈
  • 微信答疑群
  • 任务交付注意事项

等信息。如果您同时认领了多项任务,但无法都能进行投入,可以在部分任务中回复退出.

麻烦您加入到对应微信群,群备注名修改为"社区任务+您的gitcode账号", 后续有相关消息和问题都可以在微信群咨询答疑。 等您加入到微信群后,我这边会在社区任务池里面登记任务责任人。

likedislike
Ronald1995
6月26日 评论:

认领这个任务

@LouisVictorLeborgne

欢迎参加认领社区任务,当前一个任务只分配一个开发,根据评论认领时间确定,您可以后续观察该任务是否被释放退出,或者认领其他任务 https://gitcode.com/org/Ascend/discussions/4

likedislike
gcw_MTeIQk9o
6月29日 评论:

认领这个任务

likedislike
ascend-robotascend-robot成员
7月3日 关联了看板:MindStudio ISSUE管理
young256young256成员
7月8日 关联了里程碑:MindSpeed 26.2.0
且奏长歌
且奏长歌成员
8月3日 评论:

@jacky_leeie
感谢您此前对该任务的关注与支持!
由于上一位认领者暂未继续推进该任务,目前该任务已重新开放。根据此前的候选顺序,我们希望优先邀请您参与该任务。
如您目前仍有意愿认领,请在3个工作日内回复确认,并简要说明预计开始时间或初步推进计划。确认后,我们将为您保留任务,并提供必要的背景资料和支持。
如您近期时间安排不便,也请直接告知,我们将继续顺延联系其他候选贡献者,不会影响您后续参与其他社区任务。
再次感谢您对昇腾开源社区的关注,期待与您合作!
请您在完成任务后填表登记:MM社区任务管理 https://www.kdocs.cn/l/cdATVWqoh385

likedislike
jacky_leeie
8月3日 评论:

@jacky_leeie
感谢您此前对该任务的关注与支持!
由于上一位认领者暂未继续推进该任务,目前该任务已重新开放。根据此前的候选顺序,我们希望优先邀请您参与该任务。
如您目前仍有意愿认领,请在3个工作日内回复确认,并简要说明预计开始时间或初步推进计划。确认后,我们将为您保留任务,并提供必要的背景资料和支持。
如您近期时间安排不便,也请直接告知,我们将继续顺延联系其他候选贡献者,不会影响您后续参与其他社区任务。
再次感谢您对昇腾开源社区的关注,期待与您合作!
请您在完成任务后填表登记:MM社区任务管理 https://www.kdocs.cn/l/cdATVWqoh385

@WendongPang

确认认领,预计本周完成初版

likedislike
且奏长歌
且奏长歌成员
8月4日 评论:

@jacky_leeie
昨天是@错了责任人,根据规则是要先跟第二顺位的责任人确认,注意到此前您已认领多项任务,为使更多人参与进来以及根据规则要求,需要先跟后顺位的人依次确认后,如无人认领您方可参与,感谢您对MindSpeed-MM的关注

likedislike
且奏长歌
且奏长歌成员
8月4日 评论:

@LouisVictorLeborgne
感谢您此前对该任务的关注与支持!
由于上一位认领者暂未继续推进该任务,目前该任务已重新开放。根据此前的候选顺序,我们希望优先邀请您参与该任务。
如您目前仍有意愿认领,请在3个工作日内回复确认,并简要说明预计开始时间或初步推进计划。确认后,我们将为您保留任务,并提供必要的背景资料和支持。
如您近期时间安排不便,也请直接告知,我们将继续顺延联系其他候选贡献者,不会影响您后续参与其他社区任务。
再次感谢您对昇腾开源社区的关注,期待与您合作!
请您在完成任务后填表登记:MM社区任务管理 https://www.kdocs.cn/l/cdATVWqoh385

likedislike
Louis Victor Leborgne
Louis Victor Leborgne
8月7日 评论:

好的 我认领

likedislike
Louis Victor Leborgne
Louis Victor Leborgne
8月12日 评论:

汇报进度
纯 FSDP2 迁移代码已完成
纯 FSDP2 1-step 已通过
纯 FSDP2 2000-step 已完成
旧路径 2000-step 已完成
还需要整理新旧 loss 的“平均误差”计算口径
还需要整理性能对比
还需要补两篇实践文档和 PR

likedislike
Louis Victor LeborgneLouis Victor Leborgne
8月15日 关联了pull request:feat(torch): migrate Magistral-LoRA to pure FSDP2
Louis Victor Leborgne
Louis Victor Leborgne
8月16日 评论:

任务369实践报告

1. 关联内容

2. 开发内容

本次将 Magistral-LoRA 从 Megatron-FSDP2 对照路径迁移到仓库内纯 FSDP2 路径,补充以下内容:

  • 纯 FSDP2 模型入口、训练脚本和 YAML 配置;
  • Mistral3/Pixtral 的 processor、tokenizer、模板和多模态 collator 兼容;
  • LoRA 初始化确定性处理和 optimizer 参数同步;
  • DCP key/checkpoint 完整性检查;
  • 数值对比、性能统计和可选诊断工具;
  • 开发实践和性能优化实践文档。

原 Megatron-FSDP2 路径保留,用作验收对照基线。

3. 验证口径

  • 平台:Atlas 800 A2/A3,4 卡;
  • 精度:BF16;
  • seed:42;
  • global batch size:4;
  • sequence length:512;
  • old 与 pure 使用相同数据、权重、LoRA 配置和 checkpoint 约束;
  • 两条路径分别完成 2000 step;
  • 数值门采用归一化平均绝对 loss 差,不要求 bitwise 一致。

4. 验证结果

指标 结果 验收要求
归一化平均绝对 loss 差 0.4572% < 2%
old 平均 step time(101--2000) 1994.042 ms 对照基线
pure 平均 step time(101--2000) 1600.321 ms 不慢于 old
pure 相对性能 快 19.745% ≥ old
pure 相对吞吐 高 24.603% —

两条路径均完成 2000/2000 step;checkpoint、退出码、NaN、OOM、Traceback 和 skipped iteration 检查通过。pure 的 P95/P99 也低于 old;单个较高 max step 作为长尾诊断信息保留。

5. 提交边界与复现说明

上述 2000-step 精度和性能结果对应真实 NPU 验证的基线提交 645a63a。后续提交 77ff376 将可选诊断逻辑与主训练入口解耦,并默认开启 LoRA 正确性同步;该提交已通过本地 Python 编译、Shell 语法、git diff --check 和 diagnostics-disabled smoke。后续提交的 NPU smoke 需在测试资源可用时补充。

完整训练日志、checkpoint、私有路径和通信配置不提交仓库;公开脚本、配置和上述指标用于复核。

6. 当前状态

代码已提交 PR,实践文档已随 PR 提交,等待维护者评审和合入。

likedislike
Louis Victor Leborgne
Louis Victor Leborgne
8月16日 评论:

进展更新:

  1. 已完成 Magistral-LoRA 纯 FSDP2 迁移代码、训练配置、开发实践和性能实践文档。
  2. 已完成 old/pure 两条路径的正式 2000 步对照:归一化平均绝对 loss 差 0.4572%,低于 2%;Pure FSDP2 平均 step time 快 19.745%,满足性能要求。
  3. 已根据 PR 机器人反馈修复入口初始化、回调参数、DCP 键兼容、旧版多图处理、模板注册和临时配置命名等问题,并将诊断逻辑与主训练流程解耦。
  4. 需要说明的是,前后测试期间平台重新分配了 NPU 显存资源:正式 2000 步时每卡约 64 GiB,后续短测时每卡约 32 GiB,且该变化未在测试前明确说明。后续短测只用于确认解耦代码和 checkpoint 流程正常,不与正式性能数据混用。
  5. 代码和文档已同步到 fork 的 feat/issue-369-magistral-fsdp2 分支,PR #2989 正在同步更新。
likedislike
且奏长歌
且奏长歌成员
8月19日 评论:

@LouisVictorLeborgne 您好!

MindSpeed-MM 邀请您参加 2026-08-20 16:00 召开的WeLink会议

会议主题:MindSpeed MM 社区例会

会议内容:
1.社区关键issue解答
2.代码合入评审

会议链接:https://meeting.huaweicloud.com:36443/#/j/980887584

会议纪要&签到链接:https://etherpad.ascend.osinfra.cn/p/sig-MindSpeed-MM

likedislike
Yyeqm成员
8月21日 修改了issue 的描述
且奏长歌且奏长歌成员
17 天前 关联了里程碑:MindSpeed 26.3.0