已开启
AicpuAllGatherConcurMeshNHR 算法适配 #5455
AicpuAllGatherConcurMeshNHR 算法适配 #5455
已开启
hulida创建于 1 天前
hulida
hulida
1 天前

描述

关联的Issue

测试

文档更新

类型标签

likedislike
合并受阻
hulidahulida
1 天前 创建了 pull request,commit 5804c2e6
gao_dafa成员
1 天前 评论:

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
1 天前 评论:

变更摘要

本 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
1 天前 评论:

代码审查

✅ 未发现问题

likedislike
CANN-robotCANN-robot成员
1 天前 添加了label:stat/needs-squash
CANN-robotCANN-robot成员
1 天前 添加了label:cann-cla/yes
CANN-robot
CANN-robot成员
1 天前 评论:

Thanks for your pull-request.
The full list of commands accepted by me can be found at here.
You can get sig-info at here.
You can self-configure the PR merge rules for this repository. For more details, please refer to Here.
For more, you also can visit HICANN.


PR Approval Progress

⚠️ This PR does not yet meet the following requirements:lgtm (requires ≥ 2 person(s) per module)、approve (requires ≥ 1 person(s) per module)

Module Approval Details

module lgtm status approve status
repo-cann/asc-devkit ❌ (0/2)(You can also ask: 曾娟, hujiawen_kaven, bianque, XuebinYang, wuyang_hw) ❌ (0/1)(You can also ask: DragonBornHD84, jiangxinyu3, dengjing_aoe, hujiawen_kaven, kong0808)

💡 Tip:

  • Committer can comment /approve or /lgtm
  • Commenting /approve implies both code review (lgtm) and intent to merge (approve)

CLA Signature Pass

hulida, thanks for your pull request. All authors of the commits have signed the CLA. 👍

likedislike
CANN-robotCANN-robot成员
1 天前 将zengjuan,zhanghao_0689,suqwe,wulinyu,kong0808,dengjing_aoe,YeZZzzz1,bluesky901,yangbinhua,zhudi22,chenyiyuan,xun_zhuge,XuebinYang,sjtulxh,bianque,houyuyang,Lycheeeee,YANXI_ZHAO,chentianyu19,shi_nanxiang,wuyang_hw,jiangxinyu3,ascendhjh,hujiawen_kaven,wangxiaozhi,DragonBornHD84,louyuxuan,hyolee,yukangchen设为评审人
CANN-robotCANN-robot成员
1 天前 将zengjuan,zhanghao_0689,suqwe,wulinyu,kong0808,dengjing_aoe,YeZZzzz1,bluesky901,yangbinhua,zhudi22,chenyiyuan,xun_zhuge,XuebinYang,sjtulxh,bianque,houyuyang,Lycheeeee,YANXI_ZHAO,chentianyu19,shi_nanxiang,wuyang_hw,jiangxinyu3,ascendhjh,hujiawen_kaven,wangxiaozhi,DragonBornHD84,louyuxuan,hyolee,yukangchen设为审查人