已合并
refactor: 删除 nn 仓重复的 resize 类算子 IR 原型与 ONNX 插件 (9.1.0) #9384
refactor: 删除 nn 仓重复的 resize 类算子 IR 原型与 ONNX 插件 (9.1.0) #9384
已合并
chenfeng创建于 8月27日
chenfeng
chenfeng成员
8月27日

描述

resize 类算子(ResizeNearestNeighborV2、Resize)属视觉算子,其 IR 原型与 ONNX 框架插件应统一归属 ops-cv 仓。此前这两段 REG_OP 定义在 ops-nn 仓与 ops-cv 仓重复存在,且 resize_onnx_plugin.cpp 的 ONNX 插件误落在 ops-nn 仓。

本 PR 在 nn 侧执行删除(新增 0 行、删除 501 行):

  • 删除 common/inc/op_graph/op_nn_proto_extend.h 中 ResizeNearestNeighborV2、Resize 两段 REG_OP 定义(含 align_corners、half_pixel_centers、scales、coordinate_transformation_mode、mode、nearest_mode 等属性与输入输出类型定义),这些定义与 ops-cv 仓已有定义重复,统一由 ops-cv 仓承接;
  • 删除 common/src/framework/resize_onnx_plugin.cpp 整个文件,包括 ParseParamsResize/ParseOpToGraphResize、ParseParamsResizeV10/ParseOpToGraphResizeV10 等解析与构图逻辑,以及基于 REGISTER_CUSTOM_OP("PartitionedCall") 对 ai.onnx::10~18::Resize 的插件注册(nearest/linear/cubic 插值路径),该插件已迁移至 ops-cv 仓。

删除后 op_nn_proto_extend.h 中 MatMulV2 与 IndexByTensor 定义衔接保持正确,花括号平衡。

本 PR 为 master 分支 PR #9322 的 9.1.0 分支同步版本。

关联的Issue

https://gitcode.com/cann/ops-nn/issues/5238

配套 PR(ops-cv 侧迁入,9.1.0 分支):https://gitcode.com/cann/ops-cv/pull/1418

主分支配套 PR:

测试

  • pre-commit 全部通过(clang-format / OAT / codespell 等)
  • 删除后 op_nn_proto_extend.h 结构完整性验证:MatMulV2 与 IndexByTensor 衔接正确

文档更新

无文档更新。

类型标签

AI/Agent生成声明

likedislike
Pull Request已成功合入, 合并人@CANN-robot
(感谢 chenfeng 的贡献)
chenfengchenfeng成员
8月27日 创建了 pull request,commit e0e35233
chenfengchenfeng成员
8月27日 关联了issue:[Bug-Report|缺陷反馈]: foreach目录下存在资源泄露问题
atomgit-bot
atomgit-bot
8月27日 评论:

变更摘要

本 PR 为归属清理类重构:resize 类算子(ResizeNearestNeighborV2、Resize)属视觉算子,其 IR 原型与 ONNX 框架插件应统一归属 ops-cv 仓,此前在 ops-nn 仓与 ops-cv 仓重复存在。本 PR 在 nn 侧执行删除(新增 0 行、删除 501 行),删除后 op_nn_proto_extend.h 中 MatMulV2 与 IndexByTensor 定义衔接保持正确、花括号平衡。该 PR 为 master 分支 PR #9322 的 9.1.0 分支同步版本,配套 ops-cv 侧迁入 PR 已存在,无文档更新。

主要改动

  • 删除 ResizeNearestNeighborV2 与 Resize 的 IR 原型定义:移除 common/inc/op_graph/op_nn_proto_extend.h 中两段 REG_OP 定义(共 107 行),包括 align_corners、half_pixel_centers、scales、coordinate_transformation_mode、mode、nearest_mode 等属性以及输入输出类型定义,这些定义与 ops-cv 仓已有定义重复,统一由 ops-cv 仓承接。

  • 删除 resize_onnx_plugin.cpp 整个 ONNX 插件文件:移除 common/src/framework/resize_onnx_plugin.cpp(共 394 行),包括 ParseParamsResize/ParseOpToGraphResize 与 ParseParamsResizeV10/ParseOpToGraphResizeV10 两组解析与构图逻辑,以及 BuildNearestResize、BuildInterpolatingResize、BuildNearestResizeV10、BuildLinearResizeV10 等 nearest/linear/cubic 插值路径的构图辅助函数。

  • 移除 ai.onnx::Resize 的自定义算子注册:删除基于 REGISTER_CUSTOM_OP("PartitionedCall") 对 ai.onnx::10::Resize 及 ai.onnx::11~18::Resize 的 ParseParamsFn/ParseOpToGraphFn 插件注册(ImplyType::TVM),该 ONNX 插件已迁移至 ops-cv 仓,避免重复注册。

likedislike
不准确?
atomgit-bot
atomgit-bot
8月27日 评论:

代码审查

✅ 未发现问题

likedislike
不准确?
CANN-robotCANN-robot成员
8月27日 添加了label:cann-cla/yes
此处折叠了50条消息 查看更多
CANN-robotCANN-robot成员
9月3日 添加了label:lgtm
Andy-lb成员
9月3日 评论:

/approve

likedislike
CANN-robotCANN-robot成员
9月3日 添加了label:approved
CANN-robotCANN-robot成员
9月3日 关闭了关联的issue
CANN-robotCANN-robot成员
9月3日 合入了pull request