已合并
modify docs & bugfix #4730
Leewis创建于 15 天前
modify docs & bugfix #4730
已合并
Leewis创建于 15 天前
Leewis成员
15 天前

描述

修改多个代码问题:

  1. 修正头文件结束注释:ccu_primitives.hpp 中将 #endif 后的注释由 CCU_API_HPP 更正为 CCU_PRIMITIVES_HPP;
  2. 修复 GetLocalIpc2RemoteAddr 判错条件;
  3. 收紧 SdmaCopy 的 4GB 边界校验;
  4. 修改HcclCommInitAll.md文档示例,增加setdevice流程;
  5. 修改CommProtocol.md 增加950上AICPU_TS支持RoCE协议;

变更类型

请选择本次引入的变更类型:

关联的Issue

#565
#634
#530
#749

测试

已完成的测试用例和场景:
1.
2.

补充的UT用例:

文档更新

合入检查

likedislike
Pull Request已成功合入, 合并人@CANN-robot
(感谢 Leewis 的贡献)
LLeewis成员
15 天前 创建了 pull request,commit 474cbfe2
atomgit-bot
atomgit-bot
15 天前 评论:

变更摘要

该 PR 主要为文档与注释修正及若干 bug 修复。其一,修正了 include/ccu/ccu_primitives.hpp 文件末尾 #endif 注释与实际头文件名不一致的问题(由 CCU_API_HPP 更正为 CCU_PRIMITIVES_HPP)。其二,修复了 ZeroCopyAddressMgr::GetLocalIpc2RemoteAddr 中的错误检查逻辑:原代码误用 rangeIt == addrRange.end() 作为判错条件,而实际取用的映射查询结果是 mapIt,现改为正确检查 mapIt == addrMapping.end(),并同步更新了错误日志内容。其三,修复了 IAicpuTsThreadSdmaCopySdmaReduce 接口中 4GB 边界判断的缺陷,将 sizeByte > 0x100000000ULL 改为 sizeByte >= 0x100000000ULL,使恰好等于 4GB(0x100000000)的数据量也会被正确拦截并返回 HCCL_E_PARA

主要改动

  • 修正头文件结束注释:在 include/ccu/ccu_primitives.hpp 中将 #endif 后的注释由 CCU_API_HPP 更正为 CCU_PRIMITIVES_HPP,使注释与头文件守卫一致。
  • 修复 GetLocalIpc2RemoteAddr 判错条件:在 src/legacy/ascend910/framework/communicator/impl/zero_copy/zero_copy_address_mgr.cc 中,将错误分支的条件由误用的 rangeIt == addrRange.end() 改为正确的 mapIt == addrMapping.end(),并更新错误日志为提示 baseAddr 未被映射,避免因条件误判导致未映射地址仍被继续使用。
  • 收紧 SdmaCopy 的 4GB 边界校验:在 src/legacy/ascend950/interface/aicpu_ts_thread_interface.cc 中将 SdmaCopy 的大小判断由 sizeByte > 0x100000000ULL 改为 sizeByte >= 0x100000000ULL,使等于 4GB 的任务也会被判为超限并返回 HCCL_E_PARA
  • 收紧 SdmaReduce 的 4GB 边界校验:同样在 aicpu_ts_thread_interface.cc 中,将 SdmaReduce 的大小判断由 sizeByte > 0x100000000ULL 改为 sizeByte >= 0x100000000ULL,与 SdmaCopy 保持一致,符合"SDMA 单个任务最大支持 4GB"的约束语义。
likedislike
atomgit-bot
atomgit-bot
15 天前 评论:

代码审查

✅ 未发现问题

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

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
docs 颜业峰, 张兴平 (2/2) 颜业峰 (1/1)
include 颜业峰, 张兴平 (2/2) 颜业峰 (1/1)
repo-cann/hcomm 丁炜秦, 颜业峰, 张兴平 (3/2) 丁炜秦, 颜业峰 (2/1)
src/legacy/ascend910/framework 丁炜秦, 颜业峰, 张兴平 (3/2) 丁炜秦, 颜业峰 (2/1)

💡 Tip:

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

CLA Signature Pass

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

likedislike
此处折叠了82条消息 查看更多
LLeewis成员
2 天前 删除了关联的issue:[Question|问题咨询]: 通信引擎+通信协议的使用场景
LLeewis成员
2 天前 删除了关联的issue:【2026 HCCL通信库创新大赛-华北赛区】【崇理战队】GetLocalIpc2RemoteAddr 迭代器检查复制粘贴错误致未定义行为
LLeewis成员
2 天前 删除了关联的issue:【2026 HCCL通信库创新大赛-西部赛区】【56456的队伍】SdmaCopy/SdmaReduce 4GB边界off-by-one导致静默数据丢失
LLeewis成员
2 天前 删除了关联的issue:【2026 HCCL通信库创新大赛-西部赛区】【56456的队伍】ccu_primitives.hpp中#endif注释与头文件保护宏不匹配
LLeewis成员
2 天前 关联了issue:[Documentation|文档反馈]: HcclChannelAcquire.md文档里通信协议是否错误