已合并
AicpuAllGatherConcurMeshNHR 算法适配 #5455
AicpuAllGatherConcurMeshNHR 算法适配 #5455
已合并
hulida创建于 6 天前
hulida
hulida
6 天前

描述

关联的Issue

测试

文档更新

类型标签

likedislike
Pull Request已成功合入, 合并人@CANN-robot
(感谢 hulida 的贡献)
hulidahulida
6 天前 创建了 pull request,commit 5804c2e6
gao_dafa成员
6 天前 评论:

hulida,感谢您的提交,建议在完成PR充分自验证后,再触发线上构建任务。

若您的PR已具备检视条件,可根据下表的责任田,@对应的committer进行代码检视,我们会在第一时间对您的提交进行处理。

代码责任田:

module committer
adv_api chenyiyuan, wuyang_hw
basic_api chenyiyuan, wuyang_hw
c_api pangfd, haipingmao
cmake xun_zhuge, DragonBornHD84
docs munanhw, ai_xin
examples changxianyu, bianque
simt_api wulinyu, zhanghao_0689
scripts xun_zhuge, kevin365
tools YANXI_ZHAO, XuebinYang, sjtulxh

💡 如您不确定可以@谁,可以直接@我或者ascend-c sig的maintainer,xun_zhugeascendhjh,我们会为您分配合适的committer进行代码检视。

再次感谢您参与CANN的社区贡献。

likedislike
atomgit-bot
atomgit-bot
6 天前 评论:

变更摘要

本 PR 将 AllGather 并发执行算法适配为 AICPU 场景,将算法由 InsAllGatherConcurrentMesh1DNHR 更名为 AicpuAllGatherConcurMeshNHR,并在执行器与自动选择器中同步调整。核心改动是依据执行引擎(默认/CCU/AICPU)区分端口与带宽参数、切换通道计算方式(CalcChannelRequestNhrMultiJetty)、让数据切分比例 GetParallelDataSplit 依赖 OpParam 动态计算,并修正 scratch 空间分配与尾包大小设置,涉及 ins_v2_all_gather_concurrent_executor.cc、对应头文件及 all_gather_auto_selector.cc

主要改动

  • 端口/带宽常量拆分:将 CLOS_PORT_NUM 拆分为 CLOS_BWMESH_BWCLOS_JETTYMESH_BW_AICPUCLOS_BW_AICPU 五组常量,分别对应不同引擎下的端口数/带宽。
  • 通道计算方式调整:将 CalcChannelRequestNHRWithPriorityTopo 替换为 CalcChannelRequestNhrMultiJetty,并新增 resourceRequest.channels.resize(1) 以适配新的请求结构。
  • 数据切分按引擎差异化GetParallelDataSplit 增加 const OpParam& param 参数,在 COMM_ENGINE_CCU 下使用 MESH_BW/CLOS_BW,在 OpExecuteConfig::AICPU_TS 下使用 MESH_BW_AICPU/CLOS_BW_AICPU 计算 mesh 与 clos 的数据切分比例。
  • scratch 内存与尾包设置修正scratchSizeforTemp1 改为按 maxTmpMemSize_ - scratchSizeforTemp0 计算,并为 tempAlgParams 新增 tailSize 字段。
  • 算法注册与选择器联动:执行器注册名由 InsAllGatherConcurrentMesh1DNHR 改为 AicpuAllGatherConcurMeshNHR,同步更新 AllGatherAutoSelector::SelectAicpuAlgo 中对应算法名选择逻辑。
likedislike
atomgit-bot
atomgit-bot
6 天前 评论:

代码审查

✅ 未发现问题

likedislike
CANN-robotCANN-robot成员
6 天前 添加了label:stat/needs-squash
此处折叠了61条消息 查看更多
hulida
hulida
3 天前 评论:

/check-pr

likedislike
CANN-robot
CANN-robot成员
3 天前 评论:

The following labels are not ready.

lgtm: Please wait for reviewers to review the code.

approved: Please wait for committers to review the code.

likedislike
houyuyang成员
3 天前 评论:

/lgtm
/approve

likedislike
CANN-robotCANN-robot成员
3 天前 添加了label:lgtmapproved
CANN-robotCANN-robot成员
3 天前 合入了pull request