已合并
ubx perf bugfix #2727
zhaojiayu创建于 8月22日
ubx perf bugfix #2727
已合并
zhaojiayu创建于 8月22日
zhaojiayu
zhaojiayu
8月22日

描述

修复爬坡性能差的问题

关联的Issue

测试

文档更新

类型标签

likedislike
Pull Request已成功合入, 合并人@CANN-robot
(感谢 zhaojiayu 的贡献)
zhaojiayuzhaojiayu
8月22日 创建了 pull request,commit 8295e3f5
atomgit-bot
atomgit-bot
8月22日 评论:

变更摘要

本 PR(标题 "ubx perf bugfix")旨在修复 UBX 场景下爬坡(性能提升/吞吐增长)性能差的问题。核心改动集中在 all_reduce、reduce、reduce_scatter 的算法选择器及 ReduceNHR 的通道计算逻辑:将小数据量的判断方式由 IsSmallData(dataSize) 统一替换为与 SMALL_COUNT_512KB 的显式比较,并为 ReduceAutoSelector 增加基于 dataSize 的算法分支,同时针对特定拓扑优化 ReduceNHR::CalcRes 中通道的获取方式,以改善小数据量下的性能表现。

主要改动

  • AllReduceAutoSelector::SelectMeshAlgoAicpuUBX 小数据判断调整:将 isClosNumMultipleOfMeshNum && !IsSmallData(dataSize) 改为 isClosNumMultipleOfMeshNum && dataSize > SMALL_COUNT_512KB,统一小数据量判定口径,影响是否选择 AicpuAllReducePipeLineUBX 等算法。
  • ReduceScatterAutoSelector::SelectMeshAlgoAicpuForMesh1DClos 小数据判断调整:同样的条件由 !IsSmallData(dataSize) 改为 dataSize > SMALL_COUNT_512KB,影响 AicpuReduceScatterPipeLineUBX 等算法的选择。
  • ReduceAutoSelector::SelectMeshAlgoAicpu 增加数据量分支:在非 64 位数据类型且非 HCCL_REDUCE_PROD 的分支中,按 dataSize 区分算法——大于 SMALL_COUNT_512KB 时选择 ReduceParallelMesh1DNHRUBX,否则选择 AicpuReduceSoleNHR。
  • ReduceNHR::CalcRes 通道计算优化:当 topoInfo->level0Topo == Level0Shape::MESH_1D_CLOS 且 !topoInfo->level0PcieMix 时,改用 CalcChannelRequestNhrMultiJetty 计算通道并仅保留协议为 COMM_PROTOCOL_UBC_CTP 的通道加入 level1Channels,其余场景仍走原 CalcChannelRequestNhr 路径。
likedislike
不准确?
atomgit-bot
atomgit-bot
8月22日 评论:

代码审查

✅ 未发现问题

likedislike
不准确?
CANN-robotCANN-robot成员
8月22日 添加了label:cann-cla/yes
CANN-robot
CANN-robot成员
8月22日 评论:

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

✅ Congratulations! All modules have met the lgtm and approve requirements.

Module Approval Details

module lgtm status approve status
src ✅ 李标智, 林叶峰 (2/2) ✅ 李标智 (1/1)

💡 Tip:

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

CLA Signature Pass

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

likedislike
此处折叠了205条消息 查看更多
CANN-robotCANN-robot成员
9月1日 添加了label:lgtm
zhaojiayu
zhaojiayu
9月1日 评论:

complie

likedislike
CANN-robotCANN-robot成员
9月1日 删除了label:ci-pipeline-running
CANN-robotCANN-robot成员
9月1日 添加了label:ci-pipeline-passed
CANN-robotCANN-robot成员
9月1日 合入了pull request