| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
refactor: unify fusion pass platform checks and extend platform support Co-authored-by: rk<wangpengbo26@huawei.com> # message auto-generated for no-merge-commit merge: !12595 merge pass2A6 into master refactor: unify fusion pass platform checks and extend platform support Created-by: wangpengbo26 Commit-by: rk Merged-by: cann-robot Description: ## 描述 新增公共平台校验工具 arch_utils.h,统一 norm 系列融合规则的平台校验逻辑,并扩展各规则的平台支持范围。 ### 改动原因 1. 12 条融合规则各自维护私有的 IsSupportedPlatform() 实现(平台信息获取 + NpuArch 检查逻辑重复,且日志口径、返回语义不一致); 2. 各规则需扩展平台支持范围,分散修改易遗漏。 ### 改动方法 1. **新增公共工具 common/inc/op_graph/arch_utils.h**:提供 CheckNpuArch(pass_name, supported_archs)——统一完成平台信息获取、NpuArch 读取与支持列表判断,失败/不支持时输出诊断日志。 2. **12 条融合规则统一平台校验**:删除各文件私有 IsSupportedPlatform(),改用 ops::CheckNpuArch;涉及 layer_norm 系列 5 条、add_layer_norm 1 条、add_layer_norm_quant 3 条、add_rms_norm 系列 3 条、inplace_add_rms_norm 1 条。 3. **扩展平台支持**:各融合规则的支持平台列表新增新的 NpuArch 取值,扩大融合规则生效平台范围。 4. **inplace_add_layer_norm 平台判据重构**:原基于 short_soc_version 白名单 + soc_info.l2_size,改为 NpuArch 白名单 + GetLocalMemSize(L2);同时新增"输入直接来自 Data 节点则跳过"校验。 5. **UT 适配**:test_inplace_add_layer_norm_fusion_pass.cpp 适配新平台判据与新校验(+62 -14);test_layer_norm_remove_broadcast_fusion_pass.cpp 新增新平台用例(+15)。 涉及文件(17 个,+206 -272): - common/inc/op_graph/arch_utils.h(新增,+52) - 12 个融合规则文件:layer_norm / layernorm_inference / layer_norm_onnx / layer_norm_onnx_mul / layer_norm_remove_broadcast / add_layer_norm / add_layer_norm_quant_fusion_common / addlayernorm_dynamicquant / quantize_addlayernorm / add_rms_norm / add_rms_norm_dynamic_quant / add_rms_norm_quant / inplace_add_rms_norm / inplace_add_layer_norm - 2 个 UT 文件适配:test_inplace_add_layer_norm_fusion_pass.cpp(+62 -14)、test_layer_norm_remove_broadcast_fusion_pass.cpp(+15) ## 关联的Issue -https://gitcode.com/cann/ops-nn/issues/7313 ## 测试 - 既有融合规则 UT 全量回归(平台校验逻辑统一后行为不变,新平台用例新增通过)。 - inplace_add_layer_norm UT 适配新平台判据(NpuArch 白名单 + L2 获取方式)及 Data 直连输入拒绝校验。 ## 文档更新 不涉及 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:重构与平台扩展 ## AI/Agent生成声明 - [x] AI辅助编写 See merge request: cann/ops-nn!12595 | 3 天前 | |
Revert "fix: hash trailing bytes after processed blocks" Co-authored-by: chenqi317<chenqi317@huawei.com> # message auto-generated for no-merge-commit merge: !12571 merge master into master Revert "fix: hash trailing bytes after processed blocks" Created-by: chenqi317 Commit-by: chenqi317 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 定界结论: 代码问题 / LLT编译失败 — common/tests/ut/op_host/test_common_hash_tiling.cpp / test_murmur_hash_tiling.cpp(基线分支引入, 非本 PR 变更) 失败类型: 代码问题 / LLT编译失败(UT 任务链接错误) 根因: 基线分支已合入的哈希 tiling UT 测试(common/tests/ut/op_host/test_common_hash_tiling.cpp、test_murmur_hash_tiling.cpp)引用 RuntimeKb::CommonHash 与 Ops::NN::HostTiling::MurmurHash, ascend910b 版本的 UT 链接闭包缺少这两个符号的实现, 导致 nn_op_host_ut 链接失败; 同一 UT 在 ascend950 版本链接成功且用例全部通过 与本 PR 的关系: 本 PR 的 21 个变更文件全部位于 norm/in_training_update_grad/(新增 ascend350 支持), 均不含失败文件; 近 30 小时内另有 6 个不同 PR 的 run 挂同一 Job(抽验错误完全一致)→ 失败为基线(master)已合入代码的缺陷, 非本 PR 引入 处置建议: ① 本 PR 无需修改代码; 通知基线哈希 tiling 测试/实现的相关提交者或仓库维护者, 为 ascend910b 补齐这两个符号的实现(或按版本裁剪/条件编译该测试); ② 基线修复后重新触发流水线即可完成验证 排除项: 非环境问题——同 run 内 29 个 compile Job、其余 3 个 ut Job(不同版本/目标)全部通过, 且同一错误在其他 PR 上确定性复现(非瞬时网络/设备/Runner 故障); 非本 PR 引入——失败文件不在 PR 变更集, 本 PR 的 CMake 改动(COMPUTE_UNIT ascend950 → ascend950 ascend350)仅作用于 in_training_update_grad 算子自身 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> 配套issue 异常回退 https://gitcode.com/cann/ops-nn/issues/7196 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ok ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!12571 | 7 天前 | |
feat(unique): add Regbase values-only AI Core support Co-authored-by: ConanHuang<huangxiaobin1@huawei.com> # message auto-generated for no-merge-commit merge: !10993 merge feature_op_unique into master feat(unique): add Regbase values-only AI Core support Created-by: ConanHuang Commit-by: ConanHuang Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 为 aclnnUnique / aclnnUnique2 增加 Regbase values-only AI Core 路径,在单次 Kernel 调用中完成排序与去重,减少不必要的索引搬运和中间存储。 - 新增 arch35 Tiling、Kernel 和动态输出 shape 回传,接入 ACLNN 分流。 - 整理算子 L0、原型及 Ascend 950/350 构建注册;调整共享 radix 和 UniqueConsecutive 的大输入计算。 - 新增 ACLNN/Kernel 测试用例、golden 和 GEIR 示例。 新路径仅处理不返回 inverse/counts 且满足准入条件的调用,其余场景沿用既有路径;GE/ONNX 仍使用 AICPU。详细 Tiling 与 Kernel 设计见关联 Issue。 ## 关联的Issue https://gitcode.com/cann/ops-nn/issues/6187 ## 测试 - 二级冒烟通过 - UniqueWithCountsAndSorting 和 KthValue 各自 300+ kernel ST通过 - aclnnUnique aclnnUnique2 各自 170+ aclnn用例通过 - onnx geir 通路兼容性验证通过 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> 不涉及 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [x] AI辅助编写 See merge request: cann/ops-nn!10993 | 1 个月前 | |
Revert "fix: hash trailing bytes after processed blocks" Co-authored-by: chenqi317<chenqi317@huawei.com> # message auto-generated for no-merge-commit merge: !12571 merge master into master Revert "fix: hash trailing bytes after processed blocks" Created-by: chenqi317 Commit-by: chenqi317 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 定界结论: 代码问题 / LLT编译失败 — common/tests/ut/op_host/test_common_hash_tiling.cpp / test_murmur_hash_tiling.cpp(基线分支引入, 非本 PR 变更) 失败类型: 代码问题 / LLT编译失败(UT 任务链接错误) 根因: 基线分支已合入的哈希 tiling UT 测试(common/tests/ut/op_host/test_common_hash_tiling.cpp、test_murmur_hash_tiling.cpp)引用 RuntimeKb::CommonHash 与 Ops::NN::HostTiling::MurmurHash, ascend910b 版本的 UT 链接闭包缺少这两个符号的实现, 导致 nn_op_host_ut 链接失败; 同一 UT 在 ascend950 版本链接成功且用例全部通过 与本 PR 的关系: 本 PR 的 21 个变更文件全部位于 norm/in_training_update_grad/(新增 ascend350 支持), 均不含失败文件; 近 30 小时内另有 6 个不同 PR 的 run 挂同一 Job(抽验错误完全一致)→ 失败为基线(master)已合入代码的缺陷, 非本 PR 引入 处置建议: ① 本 PR 无需修改代码; 通知基线哈希 tiling 测试/实现的相关提交者或仓库维护者, 为 ascend910b 补齐这两个符号的实现(或按版本裁剪/条件编译该测试); ② 基线修复后重新触发流水线即可完成验证 排除项: 非环境问题——同 run 内 29 个 compile Job、其余 3 个 ut Job(不同版本/目标)全部通过, 且同一错误在其他 PR 上确定性复现(非瞬时网络/设备/Runner 故障); 非本 PR 引入——失败文件不在 PR 变更集, 本 PR 的 CMake 改动(COMPUTE_UNIT ascend950 → ascend950 ascend350)仅作用于 in_training_update_grad 算子自身 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> 配套issue 异常回退 https://gitcode.com/cann/ops-nn/issues/7196 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ok ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!12571 | 7 天前 | |
调整cube_utils的源码和ut的位置 Co-authored-by: jiang-mingming01<jiangmingming16@h-partners.com> # message auto-generated for no-merge-commit merge: !9060 merge br_mingmingj_mv_cube_utils_0824 into master 调整cube_utils的源码和ut的位置 Created-by: jiang-mingming01 Commit-by: jiang-mingming01 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> t调整cube_utils的源码和ut的位置 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> ## 测试 <!--描述进行了哪些测试来验证你的改动。--> UT在在--opgraph -u或者ut_test_all的时候触发 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [x] AI辅助编写 See merge request: cann/ops-nn!9060 | 2 个月前 |