已合并
refactor(unique): move aclnnUnique APIs to owning operator directory #8848
refactor(unique): move aclnnUnique APIs to owning operator directory #8848
已合并
陈展熹创建于 20 天前
陈展熹成员
20 天前

描述

aclnnUnique 和 aclnnUnique2 当前位于 scatter_elements/op_api 目录,与接口实际归属不一致。本次调整:

  • 将 aclnnUnique、aclnnUnique2 及共享实现 unique_common 迁移到 unique_consecutive/op_api。
  • 将原有 aclnnUniqueConsecutive 及 UniqueConsecutive L0 接口从 unique_consecutive/op_host/op_api 迁移到根级 op_api,统一符合仓库当前目录规范。
  • 950 核心路径由 Sort + UniqueConsecutive 实现;UniqueWithCountsAndSorting 保留为不支持 AI Core 路径时的回退实现。
  • 同步迁移接口文档、示例、ST 和 UT。
  • 将构建入口调整到算子根 CMakeLists.txt,更新依赖、文档索引和 classify_rule.yaml,并移除 scatter_elements 中不再使用的 Unique 依赖。

关联的Issue

#4918

测试

  • git diff --check 通过。
  • 目录、引用和依赖结构检查通过,旧路径无残留。
  • 未运行单元测试。

文档更新

  • 迁移 aclnnUnique.md、aclnnUnique2.md。
  • 更新 aclnn API 菜单及接口列表链接。

类型标签

AI/Agent生成声明

likedislike
Pull Request已成功合入, 合并人@CANN-robot
(感谢 陈展熹 的贡献)
陈展熹成员
20 天前 创建了 pull request,commit 7f73438a
atomgit-bot
atomgit-bot
20 天前 评论:

变更摘要

本次 PR 属于目录结构调整:将 aclnnUniqueaclnnUnique2 及其共享实现 unique_commonscatter_elements/op_api 迁移到其实际归属的 unique_with_counts_and_sorting/op_host/op_api 目录,并同步迁移接口文档、示例、ST 与 UT,补齐新目录的构建与测试发现配置,同时清理 scatter_elements 中不再使用的 Unique 依赖。该调整不涉及功能逻辑变更,仅影响文件路径、依赖引用与归类配置。

主要改动

  • 更新 classify_rule.yaml 归类路径:将 sort@ops-nnsrc.release.styleaclnn_unique.cpp/.haclnn_unique2.cpp/.h 的路径由 ops/ops-nn/index/scatter_elements/op_api/ 改为 ops/ops-nn/index/unique_with_counts_and_sorting/op_host/op_api/(+4 -4)。
  • 迁移核心接口与共享实现文件aclnn_unique.cpp/.haclnn_unique2.cpp/.hunique_common.cpp/.h 及示例、ST(atk_aclnnUnique.jsonexecutor_aclnnUnique.py 等)整体重命名迁入 unique_with_counts_and_sorting/op_host/op_api 及对应测试目录。
  • 同步更新 UT 头文件引用test_aclnn_unique.cpptest_aclnn_unique2.cpp 中的 #include 路径由 ../../../op_api/aclnn_unique.haclnn_unique2.h 调整为 ../../../op_host/op_api/aclnn_unique.haclnn_unique2.h(其中 test_aclnn_unique2.cpp 顺带补充文件末尾换行)。
  • 文档与配置同步迁移:按 PR 描述迁移 aclnnUnique.mdaclnnUnique2.md,更新 aclnn API 菜单及接口列表链接、CMake 依赖和文档索引,并新增 unique_with_counts_and_sorting/README.md,确保新目录可被构建与测试发现。
likedislike
atomgit-bot
atomgit-bot
20 天前 评论:

代码审查

✅ 未发现问题

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

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.
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/acl*.md 陈娇, 汤平川, 范其瑞 (3/2) 陈娇 (1/1)
*/*/op_api/*.h 汤磊, 范其瑞, 汤平川 (3/2) 汤磊 (1/1)
docs 陈娇, 范其瑞, 汤平川 (3/2) 陈娇 (1/1)
index 汤平川, 范其瑞 (2/2) 汤平川 (1/1)
repo-cann/ops-nn 汤平川, 范其瑞 (2/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

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

likedislike
此处折叠了104条消息 查看更多
CANN-robotCANN-robot成员
16 天前 添加了label:approved
范其瑞
范其瑞成员
16 天前 评论:

/lgtm
/approve

likedislike
CANN-robotCANN-robot成员
16 天前 添加了label:lgtm
CANN-robotCANN-robot成员
16 天前 关闭了关联的issue
CANN-robotCANN-robot成员
16 天前 合入了pull request