| Files | Last commit | Last update |
|---|---|---|
删除查看源码 Co-authored-by: y60124828<yanglou1@h-partners.com> # message auto-generated for no-merge-commit merge: !12004 merge master into master 删除查看源码 Created-by: yanglu-1 Commit-by: y60124828 Merged-by: cann-robot Description: ## 描述 删除查看源码 ## 关联的Issue 关联Issue [#6694](https://gitcode.com/cann/ops-nn/issues/6694) ## 测试 无需测试 ## 文档更新 删除文档中的查看源码链接 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!12004 | 28 days ago | |
adaptive pool簇算子支持ascend960dt Co-authored-by: wang-shilong32<wangshilong23@huawei.com> # message auto-generated for no-merge-commit merge: !12243 merge feat/op960dt-3-adaptive-pool into master adaptive pool簇算子支持ascend960dt Created-by: wang-shilong32 Commit-by: wang-shilong32 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> adaptive pool簇算子支持ascend960dt: adaptive_avg_pool2d(_grad)/adaptive_avg_pool3d(_grad)/adaptive_max_pool3d ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> https://gitcode.com/cann/ops-nn/issues/6872 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> 冒烟测试,本地编译验证。 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!12243 | 23 days ago | |
算子插件迁移 Co-authored-by: welt_lester<songlizhe1@h-partners.com> Co-authored-by: x00842564<xuyanke@huawei.com> # message auto-generated for no-merge-commit merge: !8474 merge master into master 算子插件迁移 Created-by: welt_lester Commit-by: x00842564;welt_lester Merged-by: cann-robot Description: ## 描述 落实issue #4279,将adaptive_avg_pool2d、adaptive_max_pool2d、ascend_anti_quant、ascend_dequant、ascend_quant、batch_mat_mul_v3、batch_norm、celu_v2、instance_norm_v3、ascend_quant、log_softmax_v2、mat_mul_v3、unique_with_counts_and_sorting这13个算子对应的插件从common\src\framework迁出到各自算子目录新建的\framework目录下。 ## 关联的Issue [Bug-Report|缺陷反馈]: 有对应算子的插件不应该放到公共目录 [#4279](https://gitcode.com/cann/ops-nn/issues/4279) ## 测试 compile、本地验证build通过 ## 文档更新 不涉及 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:代码重构(算子插件归属迁移,落实 #4279 ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!8474 | 2 months ago | |
adaptive pool簇算子支持ascend960dt Co-authored-by: wang-shilong32<wangshilong23@huawei.com> # message auto-generated for no-merge-commit merge: !12243 merge feat/op960dt-3-adaptive-pool into master adaptive pool簇算子支持ascend960dt Created-by: wang-shilong32 Commit-by: wang-shilong32 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> adaptive pool簇算子支持ascend960dt: adaptive_avg_pool2d(_grad)/adaptive_avg_pool3d(_grad)/adaptive_max_pool3d ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> https://gitcode.com/cann/ops-nn/issues/6872 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> 冒烟测试,本地编译验证。 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!12243 | 23 days ago | |
池化类算子proto新增宏隔离 Co-authored-by: ZhouChuping<24171214023@stu.xidian.edu.cn> # message auto-generated for no-merge-commit merge: !8435 merge fix/add-pooling-proto-macro-guards into master 池化类算子proto新增宏隔离 Created-by: qq_52056150 Commit-by: ZhouChuping Merged-by: cann-robot Description: ## 描述 池化类算子proto新增宏隔离 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue https://gitcode.com/cann/ops-nn/issues/4729 <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> ## 测试 本地采用xrun工具验证图模式,无异常,冒烟已通过 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!8435 | 2 months ago | |
fix(pooling):整改David tiling侧无用workspace Co-authored-by: qq_52056150<wangshuo179@huawei.com> # message auto-generated for no-merge-commit merge: !12364 merge fix/dav3510-pooling-ws into master fix(pooling):整改David tiling侧无用workspace Created-by: qq_52056150 Commit-by: qq_52056150 Merged-by: cann-robot Description: ## 描述 将 workspace 整改范围从 DAV_3510 扩展到本 PR 实际支持的 RegBase 目标平台:Ascend950/Ascend350/ascend960dt/mc62(按算子实际支持范围)。直接复用 common/inc/op_host/tiling_util.h 的 IsRegbaseSocVersion/IsRegbaseNpuArch,不修改公共接口;已有 context 使用 IsRegbaseSocVersion(context),已有 PlatformAscendC 使用 IsRegbaseNpuArch(ascendcPlatform.GetCurNpuArch())。保留 MaxPoolGrad SIMT、MaxPool3DWithArgmaxV2 多核协作、MaxPoolWithArgmaxV3 MulCore 及 legacy/arch22 路径的必要 workspace,A2/A3 等非目标路径保持原行为。AvgPool3DGrad 统一使用公共 RegBase 判断,未扩展其平台注册或支持矩阵。本 PR 不含 960PR/DAV_9202,不新增平台注册或 kernel 支持。 规范 AdaptiveAvgPool2d kernel 入口:adaptive_avg_pool2d_apt.cpp -> adaptive_avg_pool2d.cpp,并同步 opFile.value 与文件头。 ## 关联的Issue #6704 https://gitcode.com/cann/ops-nn/issues/6704 ## 测试 本地批跑门槛、白盒用例及 David 冒烟通过。 ## 文档更新 不涉及 ## 类型标签 - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述 ## AI/Agent生成声明 - [x] AI辅助编写 See merge request: cann/ops-nn!12364 | 22 days ago | |
fix(pooling):整改David tiling侧无用workspace Co-authored-by: qq_52056150<wangshuo179@huawei.com> # message auto-generated for no-merge-commit merge: !12364 merge fix/dav3510-pooling-ws into master fix(pooling):整改David tiling侧无用workspace Created-by: qq_52056150 Commit-by: qq_52056150 Merged-by: cann-robot Description: ## 描述 将 workspace 整改范围从 DAV_3510 扩展到本 PR 实际支持的 RegBase 目标平台:Ascend950/Ascend350/ascend960dt/mc62(按算子实际支持范围)。直接复用 common/inc/op_host/tiling_util.h 的 IsRegbaseSocVersion/IsRegbaseNpuArch,不修改公共接口;已有 context 使用 IsRegbaseSocVersion(context),已有 PlatformAscendC 使用 IsRegbaseNpuArch(ascendcPlatform.GetCurNpuArch())。保留 MaxPoolGrad SIMT、MaxPool3DWithArgmaxV2 多核协作、MaxPoolWithArgmaxV3 MulCore 及 legacy/arch22 路径的必要 workspace,A2/A3 等非目标路径保持原行为。AvgPool3DGrad 统一使用公共 RegBase 判断,未扩展其平台注册或支持矩阵。本 PR 不含 960PR/DAV_9202,不新增平台注册或 kernel 支持。 规范 AdaptiveAvgPool2d kernel 入口:adaptive_avg_pool2d_apt.cpp -> adaptive_avg_pool2d.cpp,并同步 opFile.value 与文件头。 ## 关联的Issue #6704 https://gitcode.com/cann/ops-nn/issues/6704 ## 测试 本地批跑门槛、白盒用例及 David 冒烟通过。 ## 文档更新 不涉及 ## 类型标签 - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述 ## AI/Agent生成声明 - [x] AI辅助编写 See merge request: cann/ops-nn!12364 | 22 days ago | |
test(pooling): 补充迁移 pooling 算子 tiling UT 并修复失联测试 Co-authored-by: SimonZzz<zhouquan79@huawei.com> # message auto-generated for no-merge-commit merge: !11282 merge fixUTVC7Coverage into master test(pooling): 补充迁移 pooling 算子 tiling UT 并修复失联测试 Created-by: SimonZzz Commit-by: SimonZzz Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 为迁移至 ops-nn 的 pooling 算子补充 op_host tiling UT(ascend950/arch35 模板链路),新增 10 个测试文件共 158 个用例,未修改任何算子源码。 **新增覆盖(按 common 目录):** - adaptive_pool3d_common(61.8% → 94.5%):AdaptiveMaxPool3d 的 para/big_kernel/simt 三模板(优先级 0/1/2)首次正向选中。存量测试未设置平台 version(NpuArch=3510),common 基类 GetShapeAttrsInfo 的 arch 检查将三个模板全部拒绝、落到算子私有模板;新用例补齐平台设置并覆盖 GetAndCheckIndicesDtype 全分支(INT32/INT64/强制升档/非法值)。 - pool_3d_common(26.7% → 83.2%):打通 AvgPool3D arch35 模板链(存量测试 is_regbase=false 走 310P 旧路径),Avg/Max 两算子覆盖 0/10/11/12/13/19 全部注册模板;新增 SAME/VALID padding 校验(CheckOutPutShapeForSame/Valid 此前整体 0 覆盖)、sparse 模式(stride≥2×kernel)、大输入切分(CalcSplitMaxRows/Cols/EnableSplit)、divisor_override、ceil_mode 分支。 - pool_grad_common(98.7% 保持):nchw common 经 max_pool_grad_with_argmax_v3 的 NCHW 用例进一步覆盖。 **其余算子**(max_pool3d_grad、max_pool3d_with_argmax_v2、max_pool_grad_with_argmax(_v3)、max_pool_with_argmax_v3、adaptive_avg_pool2d/3d(_grad)):max_pool3d_grad 从零新建 tiling UT(此前仅有 infershape),其余补充 NCHW 路径、split_w/simt 模板正向选中、穷举搜索与兜底路径等未触发分支。 **顺带修复一处存量测试问题:** - test_adaptive_avg_pool3d_tiling_rebase.cpp 文件名不匹配 CMake glob(test_*_tiling.cpp)导致从未编译执行,重命名为 test_adaptive_avg_pool3d_rebase_tiling.cpp 移入 arch35/ 目录,并修复 gtest 符号冲突、过期 tiling key 期望值(旧编码)、缺失 SetOpType、tiling data 结构体新增 threadNum 字段。 **多 SoC 隔离说明:** 多 SoC 算子(adaptive_avg_pool3d/avg_pool3_d 等)的 arch35 专项用例统一置于 tests/ut/op_host/arch35/ 子目录,非 ascend950 构建的 UT glob 不收集该目录,避免在 Atlas 训练系列 SoC 构建下因 arch35 模板未注册而失败。 **版本兼容说明:** max_pool3d_grad 的 3 个用例(011/012/014)中 TilingKey/BlockDim/Workspace 的具体取值在 CANN 9.0 与 9.3.0 间存在实现差异(key 编码位/BlockDim 算法/Workspace 策略),此类断言放宽为环境无关的语义断言(key>0、blockDim>=1、workspace>=下界),保留 tiling 成功与模板 fallthrough 的验证语义。 无法覆盖代码(死代码/UT 框架限制/极端 shape 代价,如无调用者的 Tiling4AvgPool3DRegBase、metadef 空平台断言路径等)已逐一归类分析。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> https://gitcode.com/cann/ops-nn/issues/6289 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> - 构建命令:bash build.sh -u --ophost --soc=ascend950 --cov - **本 PR 范围内全部用例通过**(CI ascend950 轮 4209 用例全部 PASSED,含本 PR 全部新增用例) - 覆盖率(lcov,tiling 行覆盖,ascend950 构建): | 目录 | 基线 | 本 PR | |------|------|-------| | adaptive_pool3d_common | 61.8% | 94.5% | | pool_3d_common | 26.7% | 83.2% | | pool_grad_common | 98.7% | 98.7% | | 全局(行/函数) | 78.2% / 82.0% | 89%+ / 92%+ | - pre-commit hooks 全部通过(clang-format、OAT license 检查、codespell) ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> 不涉及 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:补充 pooling 算子 tiling UT 覆盖率(含 1 处存量测试失联修复) ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [x] AI辅助编写 See merge request: cann/ops-nn!11282 | 1 month ago | |
adaptive pool簇算子支持ascend960dt Co-authored-by: wang-shilong32<wangshilong23@huawei.com> # message auto-generated for no-merge-commit merge: !12243 merge feat/op960dt-3-adaptive-pool into master adaptive pool簇算子支持ascend960dt Created-by: wang-shilong32 Commit-by: wang-shilong32 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> adaptive pool簇算子支持ascend960dt: adaptive_avg_pool2d(_grad)/adaptive_avg_pool3d(_grad)/adaptive_max_pool3d ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> https://gitcode.com/cann/ops-nn/issues/6872 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> 冒烟测试,本地编译验证。 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!12243 | 23 days ago | |
产品名称修改 Co-authored-by: y60124828<yanglou1@h-partners.com> # message auto-generated for no-merge-commit merge: !11292 merge master into master 产品名称修改 Created-by: yanglu-1 Commit-by: y60124828 Merged-by: cann-robot Description: ## 描述 产品名称修改 ## 关联的Issue 关联Issue [#6089](https://gitcode.com/cann/ops-nn/issues/6089) ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!11292 | 1 month ago |
AdaptiveAvgPool2d
产品支持情况
| 产品 | 是否支持 |
|---|---|
| Ascend 950PR&950DT系列产品 | √ |
| Atlas A3系列产品 | √ |
| Atlas A2系列产品 | √ |
| Atlas 200I/500 A2推理产品 | × |
| Atlas推理系列产品 | √ |
| Atlas训练系列产品 | × |
| Kirin X90处理器系列产品 | √ |
| Kirin 9030处理器系列产品 | √ |
功能说明
- 算子功能:在指定二维输出shape信息的情况下,完成输入张量的2D自适应平均池化计算。
参数说明
| 参数名 | 输入/输出/属性 | 描述 | 数据类型 | 数据格式 |
|---|---|---|---|---|
| x | 输入 | 待进行adaptiveavgpool2d计算的入参。表示待转换的目标张量。 | FLOAT、FLOAT16、BFLOAT16 | ND |
| output_size | 属性 | 待进行adaptiveavgpool2d计算的入参。表示输出在HW维度上的shape大小。 | INT64 | - |
| y | 输出 | 待进行adaptiveavgpool2d计算的出参。表示转换后的结果张量。 | FLOAT、FLOAT16、BFLOAT16 | ND |
- Atlas推理系列产品:不支持BFLOAT16。
- Kirin X90/Kirin 9030处理器系列产品: 不支持BFLOAT16。
约束说明
无。
调用说明
| 调用方式 | 样例代码 | 说明 |
|---|---|---|
| aclnn接口 | test_aclnn_adaptive_avg_pool2d.cpp | 通过aclnnAdaptiveAvgPool2d接口方式调用AdaptiveAvgPool2d算子。 |