| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
refactor(unique): 将全局去重接口迁移到独立目录 Co-authored-by: yourealize<chenzhanxi1@huawei.com> # message auto-generated for no-merge-commit merge: !10273 merge codex/unique-api-independent-dir into master refactor(unique): 将全局去重接口迁移到独立目录 Created-by: yourealize Commit-by: yourealize Merged-by: cann-robot Description: ## 描述 aclnnUnique/Unique2 提供全局去重,当前与连续去重算子 UniqueConsecutive 放在同一目录。将两个接口及其共享实现 unique_common 迁移至独立的 index/unique/op_api,由该模块管理 AI Core 组合路径和 AI CPU 回退依赖。 同步迁移文档、示例、ST 和 UT,补齐独立模块的构建和测试入口,更新接口索引和分类路径。UniqueConsecutive 接口、L0 和 Kernel 保留原目录。15 个迁移文件内容完全不变,不调整接口行为和计算逻辑。 ## 关联的Issue [#5427](https://gitcode.com/cann/ops-nn/issues/5427) ## 测试 - git diff --check 通过。 - 15 个迁移文件与基线 Git blob 哈希一致。 - 迁移旧路径无残留,迁移文档的本地链接及 UT 相对 include 检查通过。 - 已静态核对模块源码收集、头文件导出及 UT 注册入口。 - 本机无可用 CANN 编译环境,未运行编译、UT 或设备测试。 ## 文档更新 新增 index/unique/README.md,迁移 aclnnUnique/Unique2 文档与示例,更新接口菜单及列表。 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [x] 其他,请描述:目录结构调整 ## AI/Agent生成声明 - [x] AI辅助编写 See merge request: cann/ops-nn!10273 | 1 个月前 | |
refactor(unique): 将全局去重接口迁移到独立目录 Co-authored-by: yourealize<chenzhanxi1@huawei.com> # message auto-generated for no-merge-commit merge: !10273 merge codex/unique-api-independent-dir into master refactor(unique): 将全局去重接口迁移到独立目录 Created-by: yourealize Commit-by: yourealize Merged-by: cann-robot Description: ## 描述 aclnnUnique/Unique2 提供全局去重,当前与连续去重算子 UniqueConsecutive 放在同一目录。将两个接口及其共享实现 unique_common 迁移至独立的 index/unique/op_api,由该模块管理 AI Core 组合路径和 AI CPU 回退依赖。 同步迁移文档、示例、ST 和 UT,补齐独立模块的构建和测试入口,更新接口索引和分类路径。UniqueConsecutive 接口、L0 和 Kernel 保留原目录。15 个迁移文件内容完全不变,不调整接口行为和计算逻辑。 ## 关联的Issue [#5427](https://gitcode.com/cann/ops-nn/issues/5427) ## 测试 - git diff --check 通过。 - 15 个迁移文件与基线 Git blob 哈希一致。 - 迁移旧路径无残留,迁移文档的本地链接及 UT 相对 include 检查通过。 - 已静态核对模块源码收集、头文件导出及 UT 注册入口。 - 本机无可用 CANN 编译环境,未运行编译、UT 或设备测试。 ## 文档更新 新增 index/unique/README.md,迁移 aclnnUnique/Unique2 文档与示例,更新接口菜单及列表。 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [x] 其他,请描述:目录结构调整 ## AI/Agent生成声明 - [x] AI辅助编写 See merge request: cann/ops-nn!10273 | 1 个月前 | |
refactor(unique): 将全局去重接口迁移到独立目录 Co-authored-by: yourealize<chenzhanxi1@huawei.com> # message auto-generated for no-merge-commit merge: !10273 merge codex/unique-api-independent-dir into master refactor(unique): 将全局去重接口迁移到独立目录 Created-by: yourealize Commit-by: yourealize Merged-by: cann-robot Description: ## 描述 aclnnUnique/Unique2 提供全局去重,当前与连续去重算子 UniqueConsecutive 放在同一目录。将两个接口及其共享实现 unique_common 迁移至独立的 index/unique/op_api,由该模块管理 AI Core 组合路径和 AI CPU 回退依赖。 同步迁移文档、示例、ST 和 UT,补齐独立模块的构建和测试入口,更新接口索引和分类路径。UniqueConsecutive 接口、L0 和 Kernel 保留原目录。15 个迁移文件内容完全不变,不调整接口行为和计算逻辑。 ## 关联的Issue [#5427](https://gitcode.com/cann/ops-nn/issues/5427) ## 测试 - git diff --check 通过。 - 15 个迁移文件与基线 Git blob 哈希一致。 - 迁移旧路径无残留,迁移文档的本地链接及 UT 相对 include 检查通过。 - 已静态核对模块源码收集、头文件导出及 UT 注册入口。 - 本机无可用 CANN 编译环境,未运行编译、UT 或设备测试。 ## 文档更新 新增 index/unique/README.md,迁移 aclnnUnique/Unique2 文档与示例,更新接口菜单及列表。 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [x] 其他,请描述:目录结构调整 ## AI/Agent生成声明 - [x] AI辅助编写 See merge request: cann/ops-nn!10273 | 1 个月前 | |
format cpp Co-authored-by: yang-di52<yangdi52@huawei.com> # message auto-generated for no-merge-commit merge: !6784 merge issue_fix into master format cpp Created-by: yang-di52 Commit-by: yang-di52 Merged-by: cann-robot Description: ## 描述 批量刷新cpp代码格式 ## 关联的Issue [#3791](https://gitcode.com/cann/ops-nn/issues/3791) ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:代码格式化 ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!6784 | 3 个月前 | |
refactor(unique): move aclnnUnique APIs to owning operator directory Co-authored-by: yourealize<chenzhanxi1@huawei.com> # message auto-generated for no-merge-commit merge: !8848 merge codex/move-aclnn-unique into master refactor(unique): move aclnnUnique APIs to owning operator directory Created-by: yourealize Commit-by: yourealize Merged-by: cann-robot Description: ## 描述 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](https://gitcode.com/cann/ops-nn/issues/4918) ## 测试 - git diff --check 通过。 - 目录、引用和依赖结构检查通过,旧路径无残留。 - 未运行单元测试。 ## 文档更新 - 迁移 aclnnUnique.md、aclnnUnique2.md。 - 更新 aclnn API 菜单及接口列表链接。 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [x] 其他,请描述:目录结构调整 ## AI/Agent生成声明 - [x] AI辅助编写 See merge request: cann/ops-nn!8848 | 2 个月前 | |
MicroAPI namespace to Reg for arch35 kernels Co-authored-by: gcw_DS4cmz2b<1312925094@qq.com> # message auto-generated for no-merge-commit merge: !9267 merge rename into master MicroAPI namespace to Reg for arch35 kernels Created-by: gcw_DS4cmz2b Commit-by: gcw_DS4cmz2b Merged-by: cann-robot Description: ## 描述 修改了index,activation,matmul,conv,foreach,optim,experimental,vfusion,hash这几个文件夹内的命名空间,将MicroAPI-->Reg ## 关联的Issue [多个文件夹内的算子命名空间使用的MicroAPI,应改为Reg](https://gitcode.com/cann/ops-nn/issues/5218) ## 测试 验证方法 严格按四步流程,逐算子验证: 1. Step 1:编译原始代码,保存 baseline binary .o 文件 MD5 2. Step 2:执行 MicroAPI → Reg 替换 3. Step 3:编译替换后代码,保存 after binary .o 文件 MD5 4. Step 4:对比 A_before.md5 与 B_after.md5 平台:ascend950,编译参数:--soc=ascend950 --ops=<op> -j16 验证替换前后 binary 产物 MD5 完全一致。 冒烟,代码审查均通过 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!9267 | 2 个月前 | |
refactor(unique): 将全局去重接口迁移到独立目录 Co-authored-by: yourealize<chenzhanxi1@huawei.com> # message auto-generated for no-merge-commit merge: !10273 merge codex/unique-api-independent-dir into master refactor(unique): 将全局去重接口迁移到独立目录 Created-by: yourealize Commit-by: yourealize Merged-by: cann-robot Description: ## 描述 aclnnUnique/Unique2 提供全局去重,当前与连续去重算子 UniqueConsecutive 放在同一目录。将两个接口及其共享实现 unique_common 迁移至独立的 index/unique/op_api,由该模块管理 AI Core 组合路径和 AI CPU 回退依赖。 同步迁移文档、示例、ST 和 UT,补齐独立模块的构建和测试入口,更新接口索引和分类路径。UniqueConsecutive 接口、L0 和 Kernel 保留原目录。15 个迁移文件内容完全不变,不调整接口行为和计算逻辑。 ## 关联的Issue [#5427](https://gitcode.com/cann/ops-nn/issues/5427) ## 测试 - git diff --check 通过。 - 15 个迁移文件与基线 Git blob 哈希一致。 - 迁移旧路径无残留,迁移文档的本地链接及 UT 相对 include 检查通过。 - 已静态核对模块源码收集、头文件导出及 UT 注册入口。 - 本机无可用 CANN 编译环境,未运行编译、UT 或设备测试。 ## 文档更新 新增 index/unique/README.md,迁移 aclnnUnique/Unique2 文档与示例,更新接口菜单及列表。 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [x] 其他,请描述:目录结构调整 ## AI/Agent生成声明 - [x] AI辅助编写 See merge request: cann/ops-nn!10273 | 1 个月前 | |
refactor(unique): 将全局去重接口迁移到独立目录 Co-authored-by: yourealize<chenzhanxi1@huawei.com> # message auto-generated for no-merge-commit merge: !10273 merge codex/unique-api-independent-dir into master refactor(unique): 将全局去重接口迁移到独立目录 Created-by: yourealize Commit-by: yourealize Merged-by: cann-robot Description: ## 描述 aclnnUnique/Unique2 提供全局去重,当前与连续去重算子 UniqueConsecutive 放在同一目录。将两个接口及其共享实现 unique_common 迁移至独立的 index/unique/op_api,由该模块管理 AI Core 组合路径和 AI CPU 回退依赖。 同步迁移文档、示例、ST 和 UT,补齐独立模块的构建和测试入口,更新接口索引和分类路径。UniqueConsecutive 接口、L0 和 Kernel 保留原目录。15 个迁移文件内容完全不变,不调整接口行为和计算逻辑。 ## 关联的Issue [#5427](https://gitcode.com/cann/ops-nn/issues/5427) ## 测试 - git diff --check 通过。 - 15 个迁移文件与基线 Git blob 哈希一致。 - 迁移旧路径无残留,迁移文档的本地链接及 UT 相对 include 检查通过。 - 已静态核对模块源码收集、头文件导出及 UT 注册入口。 - 本机无可用 CANN 编译环境,未运行编译、UT 或设备测试。 ## 文档更新 新增 index/unique/README.md,迁移 aclnnUnique/Unique2 文档与示例,更新接口菜单及列表。 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [x] 其他,请描述:目录结构调整 ## AI/Agent生成声明 - [x] AI辅助编写 See merge request: cann/ops-nn!10273 | 1 个月前 | |
docs(index): 修正 15 个算子 README 产品支持声明并补充 index 算子功能说明 Co-authored-by: chen-xing-yu<chenxingyu18@huawei.com> # message auto-generated for no-merge-commit merge: !8203 merge issue_4504 into master docs(index): 修正 15 个算子 README 产品支持声明并补充 index 算子功能说明 Created-by: chenxingyu18 Commit-by: chen-xing-yu Merged-by: cann-robot Description: ## 描述 修正 index/ 目录下算子 README 与实际注册不一致、描述不清晰的问题,涉及两项: 1. 产品支持声明(#4504):index/ 下 15 个算子 README「产品支持情况」表声明支持 Ascend 950 之外的多个产品,但对应 *_def.cpp 的 AICore().AddConfig() 仅注册 ascend950,将除 Ascend 950 外其余产品行的 √ 改为 ×,使文档与实际注册一致。 2. index 算子功能说明(#4511):index/index/README.md 原功能说明仅提及 indices 与 x,补充 indexed_sizes、indexed_strides、indices、y 与功能的关系,明确多维高级索引语义。 本次仅改动 README 文档,未改动算子 tiling/kernel/def 代码。 ## 关联的Issue [#4504](https://gitcode.com/cann/ops-nn/issues/4504) [#4511](https://gitcode.com/cann/ops-nn/issues/4511) Closes #4504 Closes #4511 ## 文档更新 - index/index/README.md(产品支持表 + 功能说明) - index/gather_v2/README.md - index/data_format_dim_map/README.md - index/non_zero/README.md - index/embedding_dense_grad/README.md - index/gather_elements/README.md - index/index_put_v2/README.md - index/quant_update_scatter/README.md - index/scatter/README.md - index/gather_nd/README.md - index/index_fill_d/README.md - index/scatter_add/README.md - index/scatter_elements/README.md - index/scatter_nd/README.md - index/unique_consecutive/README.md ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [x] AI辅助编写 See merge request: cann/ops-nn!8203 | 2 个月前 |
UniqueConsecutive
产品支持情况
| 产品 | 是否支持 |
|---|---|
| Ascend 950PR/Ascend 950DT | √ |
| Atlas A3 训练系列产品/Atlas A3 推理系列产品 | × |
| Atlas A2 训练系列产品/Atlas A2 推理系列产品 | × |
| Atlas 200I/500 A2 推理产品 | × |
| Atlas 推理系列产品 | × |
| Atlas 训练系列产品 | × |
功能说明
- 算子功能:去除每一个元素后的重复元素。当dim不为空时,去除对应维度上的每一个张量后的重复张量。
参数说明
| 参数名 | 输入/输出/属性 | 描述 | 数据类型 | 数据格式 |
|---|---|---|---|---|
| x | 输入 | 待进行UniqueConsecutive去重计算的入参。 | BF16、FLOAT16、FLOAT、INT8、INT16、INT32、INT64、UINT8、UINT16、UINT32、UINT64 | ND |
| return_idx | 输入属性 | 是否返回self中各元素在输出y中的位置。 | BOOL | ND |
| return_counts | 输入属性 | 是否返回输出y中各元素重复次数。 | BOOL | ND |
| axis | 输入属性 | 去重维度。 | INT32 | ND |
| out_idx | 输入属性 | 指定输出idx和count的类型,默认INT64。 | INT32 | ND |
| y | 输出 | 元素消除连续重复后的输出。 | BF16、FLOAT16、FLOAT、INT8、INT16、INT32、INT64、UINT8、UINT16、UINT32、UINT64 | ND |
| idx | 输出 | 返回self中各元素在输出y中的位置,return_idx为True时生效。 | INT32、INT64 | ND |
| count | 输出 | 返回输出y中各元素重复次数,return_counts为True时生效。 | INT32、INT64 | ND |
约束说明
无
调用说明
| 调用方式 | 调用样例 | 说明 |
|---|---|---|
| aclnn调用 | test_aclnn_unique_consecutive | 通过aclnnUniqueConsecutive接口方式调用UniqueConsecutive算子。 |