大数跨境
0
0

昇腾+verl:基于昇腾超节点DeepSeek R1模型RL训练优化实践

昇腾+verl:基于昇腾超节点DeepSeek R1模型RL训练优化实践 华为计算
2025-10-29
17

现阶段,昇腾CANN致力于协助开发者基于NPU构建更高效的大模型强化学习训练平台,全面赋能强化学习场景深度训推优化。目前,昇腾CANN已经支持对接开源RL训练框架verl,能够适配GRPO、DAPO、PPO等多种RL训练算法。为充分释放verl在昇腾NPU集群上的训练效能潜力,CANN团队基于Atlas 900 A3 SuperCluster集成MindSpeed与vLLM-Ascend后端框架,面向昇腾集群对DeepSeek R1的强化学习训练流程进行了插件式专项优化,优化范围覆盖模型间调度、训推切换、训练及推理四大核心环节。基于上述优化特性,DeepSeek R1 模型实际负载场景下的RL 训练在Atlas 900 A3 SuperCluster中实现了120TPS/卡的系统吞吐表现,所有适配优化代码均已开源至:

https://gitcode.com/cann/cann-recipes-train/tree/master/rl_train/deepseek


模型间调度性能优化实践


集群规模较大时,ray框架串行调度各个训练worker所需的序列化和数据传输开销可能成为RL训练过程中的显著性能瓶颈。为了解决训练任务下发耗时长的问题,CANN团队从任务间共用数据管理、进程间数据流设计两方面入手,设计了TensorCache机制统一管理前后任务之间共用的Device侧数据张量。在保留Host与Device间必要数据传输的前提下提升整体传输效率,消除了原本分钟级别的任务调度时间。


模型间调度性能优化方案解读:

https://gitcode.com/cann/cann-recipes-train/blob/master/docs/deepseek_rl_train_optimization.md#性能优化模型间调度



训推切换性能优化实践


由于训练与推理的模型分布式并行部署策略不一致,共卡部署场景下RL训练过程通常涉及训练与推理状态切换。针对EP切分,本实践采用基于 AlltoAllV 的专家参数定向路由零冗余通信方案,避免原始方案中通过AllGather聚合所有专家带来的通信量和峰值内存冗余。针对PP/TP切分,本实践采用TP域AllGather+PP域AllToAll的方式替代了原本逐参数做PP域Broadcast和TP域AllGather的方式,有效减少了总通信量和通信次数。


训推切换性能优化方案解读:

https://gitcode.com/cann/cann-recipes-train/blob/master/docs/deepseek_rl_train_optimization.md#性能优化训推切换



训练性能优化实践


本实践集成了MindSpeed训练后端框架,因此训练性能优化策略主要复用了MindSpeed在内存管理、通信优化和计算优化方面的诸多技术,相关优化技术细节可参考MindSpeed官方文档特性介绍:

https://gitcode.com/Ascend/MindSpeed


此外,本实践还实现了old_log_prob免计算特性,旨在通过复用已有前向计算结果减少on-policy训练算法(如GRPO)中的冗余前向计算。


训练性能优化方案解读:

https://gitcode.com/cann/cann-recipes-train/blob/master/docs/deepseek_rl_train_optimization.md#性能优化训练



推理性能优化实践


针对RL训练的推理阶段,CANN团队复用了昇腾NPU在线推理的多种优化技术:算子层面,基于芯片特点和DeepSeek R1模型结构针对性地使能了算子的多流并行,并利用昇腾亲和的NZ数据排列格式存储KV Cache,提升注意力算子计算效率;框架层面,通过TorchAir整图下沉并将推理框架Gloo通信切换到HCCL通信的方式,针对性地解决了算子下发引入额外开销以及推理前后处理Gloo通信耗时长的调度bound等问题。


相关推理性能优化特性可从cann-recipes-infer代码仓获取参考实践:

https://gitcode.com/cann/cann-recipes-infer


同时也已经合入vLLM-Ascend开源社区:

https://github.com/vllm-project/vllm-ascend


推理性能优化方案解读:

https://gitcode.com/cann/cann-recipes-train/blob/master/docs/deepseek_rl_train_optimization.md#性能优化推理



快速体验


目前,CANN已提供针对DeepSeek R1的RL训练全流程适配优化实践样例:

https://gitcode.com/cann/cann-recipes-train/blob/master/rl_train/deepseek/README.md


欢迎各位开发者上手体验!我们将持续推进更高效的大模型强化学习训练平台建设,不断推出具有竞争力的核心特性,诚邀全球开发者一同加入昇腾开源社区参与平台共建、代码贡献以及实践分享,共同在大模型强化学习训练场景中打造更加卓越的用户体验!




◆往期推荐◆


         

         

精度无损,成本减半!KunLun AI Space基于昇腾实现DeepSeek V3.1 FP8推理


       
           
           
           

【声明】内容源于网络
0
0
华为计算
1234
内容 2626
粉丝 0
华为计算 1234
总阅读12.6k
粉丝0
内容2.6k