| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
fix: 修复precommit误删的py引用 Co-authored-by: yelongjian<yelongjian1@huawei.com> # message auto-generated for no-merge-commit merge: !3885 merge dev-precommit0706 into develop fix: 修复precommit误删的py引用 Created-by: yelongjian Commit-by: yelongjian Merged-by: cann-robot Description: # Pull Request ## 描述 修复precommit误删的py引用 ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [x] 🐛 Bug 修复 - [ ] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在当前页面的右侧'关联Issue'部分添加相应Issue链接,并勾选'合并后关闭已关联的 Issue'选项。 --> ## 如何测试 描述测试此变更的步骤和前提条件: 1.NA ## 核对清单 <!-- [x] 表示选中 --> - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如: feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 在此添加任何其他关于本次 PR 的说明。 See merge request: cann/ge!3885 | 1 个月前 | |
fix: 修复precommit误删的py引用 Co-authored-by: yelongjian<yelongjian1@huawei.com> # message auto-generated for no-merge-commit merge: !3885 merge dev-precommit0706 into develop fix: 修复precommit误删的py引用 Created-by: yelongjian Commit-by: yelongjian Merged-by: cann-robot Description: # Pull Request ## 描述 修复precommit误删的py引用 ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [x] 🐛 Bug 修复 - [ ] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在当前页面的右侧'关联Issue'部分添加相应Issue链接,并勾选'合并后关闭已关联的 Issue'选项。 --> ## 如何测试 描述测试此变更的步骤和前提条件: 1.NA ## 核对清单 <!-- [x] 表示选中 --> - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如: feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 在此添加任何其他关于本次 PR 的说明。 See merge request: cann/ge!3885 | 1 个月前 | |
docs: 补充 fusion pass 样例 es_all.whl 安装步骤 Co-authored-by: du-hua1024<duhua2@huawei.com> # message auto-generated for no-merge-commit merge: !3794 merge master into develop docs: 补充 fusion pass 样例 es_all.whl 安装步骤 Created-by: du-hua1024 Commit-by: du-hua1024 Merged-by: cann-robot Description: # Pull Request ## 描述 补充 C++ fusion pass 样例文档中运行前安装 es_all.whl 的步骤,确保示例生成的 ES Python 包被安装到 ${ASCEND_PATH}/python/site-packages/ 后再执行后续流程。 本次更新覆盖: - graph_base_pass/2_move_relu_before_concat_pass/cpp 中英文 README - pattern_base_pass/3_fuse_matmul_add_pass_with_pattern_matcher_config/cpp 中英文 README ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [x] 📝 文档内容更新 ## 关联的Issue 无。 ## 如何测试 描述测试此变更的步骤和前提条件: 1. 根据readme,example可以正常运行 ## 核对清单 <!-- [x] 表示选中 --> - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如:feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 本次变更为文档补充,不涉及运行时逻辑、构建脚本或测试用例变更。 See merge request: cann/ge!3794 | 1 个月前 | |
fix: 修复precommit误删的py引用 Co-authored-by: yelongjian<yelongjian1@huawei.com> # message auto-generated for no-merge-commit merge: !3885 merge dev-precommit0706 into develop fix: 修复precommit误删的py引用 Created-by: yelongjian Commit-by: yelongjian Merged-by: cann-robot Description: # Pull Request ## 描述 修复precommit误删的py引用 ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [x] 🐛 Bug 修复 - [ ] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在当前页面的右侧'关联Issue'部分添加相应Issue链接,并勾选'合并后关闭已关联的 Issue'选项。 --> ## 如何测试 描述测试此变更的步骤和前提条件: 1.NA ## 核对清单 <!-- [x] 表示选中 --> - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如: feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 在此添加任何其他关于本次 PR 的说明。 See merge request: cann/ge!3885 | 1 个月前 | |
fix: 修复融合pass样例so迁移后运行时链接es so失败(#458) Co-authored-by: zhanj<zhanjun6@hisilicon.com> # message auto-generated for no-merge-commit merge: !3682 merge fix/fusion-pass-install-rpath-origin-develop into develop fix: 修复融合pass样例so迁移后运行时链接es so失败(#458) Created-by: zhanj Commit-by: zhanj Merged-by: cann-robot Description: ## 描述 修复 issue #458 反馈的问题。 融合 pass 样例的 CMakeLists.txt 中 INSTALL_RPATH 仅指向构建目录的绝对路径 ${CMAKE_CURRENT_BINARY_DIR}/es_output/lib64。当用户将 pass so 与依赖的 es so 一起迁移到安装目录(如 ${ASCEND_PATH}/opp/vendors/${PASS_SO_DIR}/custom_fusion_passes)后,运行时无法在该绝对路径找到 es so,导致动态库链接失败。 本次修改在 INSTALL_RPATH 中新增 $ORIGIN,使安装后的 pass so 能从其所在目录(与 es so 同目录)查找依赖;同时设置 INSTALL_RPATH_USE_LINK_PATH TRUE 保留链接搜索路径。即同时支持: - es_output 目录(构建产物场景) - 随融合 pass so 同目录查找(迁移安装场景) issue 中提到的文件为 7_batch_matmul_flatten_pass,经排查 examples/fusion_pass 下所有使用相同 INSTALL_RPATH 的样例均存在该问题,一并修复。 ## 变更类型 - [x] 🐛 Bug 修复 - [ ] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的Issue #458 ## 如何测试 1. 在任一融合 pass 样例目录执行 mkdir build && cd build && cmake .. && make && make install,将 pass so 安装到 ${ASCEND_PATH}/opp/vendors/${PASS_SO_DIR}/custom_fusion_passes; 2. 将构建产物 es_output/lib64 下的 es so 一并拷贝到上述安装目录; 3. 使用 readelf -d lib<pass>.so | grep -i runpath 确认 RUNPATH 同时包含构建路径与 $ORIGIN; 4. 在无构建目录绝对路径的环境下加载 pass so,验证能从同目录正确链接到 es so,运行时不再报链接失败。 核对说明:已用最小 CMake 工程验证 INSTALL_RPATH "...;$ORIGIN" 写法生成的 so,其 RUNPATH 确实包含 <build>/es_output/lib64:$ORIGIN 两条路径。 ## 核对清单 - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如:feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 涉及文件(9个 CMakeLists.txt): - examples/fusion_pass/pattern_base_pass/1_fuse_matmul_add_pass/cpp/CMakeLists.txt - examples/fusion_pass/pattern_base_pass/2_fuse_matmul_add_pass_with_capture_tensor/cpp/CMakeLists.txt - examples/fusion_pass/pattern_base_pass/3_fuse_matmul_add_pass_with_pattern_matcher_config/cpp/CMakeLists.txt - examples/fusion_pass/pattern_base_pass/4_add_zero_pass/cpp/CMakeLists.txt - examples/fusion_pass/pattern_base_pass/5_add_zero_pass_in_custom_op/cpp/CMakeLists.txt - examples/fusion_pass/pattern_base_pass/6_decompose_grouped_conv_to_splited_pass/cpp/CMakeLists.txt - examples/fusion_pass/pattern_base_pass/7_batch_matmul_flatten_pass/cpp/CMakeLists.txt(issue 中提及) - examples/fusion_pass/graph_base_pass/2_move_relu_before_concat_pass/cpp/CMakeLists.txt - examples/fusion_pass/graph_base_pass/3_modify_conv_data_format_pass/cpp/CMakeLists.txt 仅修改 CMakeLists.txt 中的 RPATH 设置,不涉及 C++ 源码改动。 See merge request: cann/ge!3682 | 1 个月前 | |
feat: 基于match result和match node的infershape工具函数的python化 Co-authored-by: lfz<220252399@seu.edu.cn> # message auto-generated for no-merge-commit merge: !4114 merge intershape into develop feat: 基于match result和match node的infershape工具函数的python化 Created-by: lfz2812 Commit-by: lfz Merged-by: cann-robot Description: # Pull Request ## 描述 为 GE Python Pass 增加 infer_shape 接口,用于在 Python 自定义融合场景中对 replacement graph 进行 Shape、DataType 和 Format 推导。 接口支持以下三类推导来源: - MatchResult:PatternFusionPass 场景 - Node:DecomposePass 场景 - SubgraphBoundary:Graph-base pass 场景 本次修改通过 Python 绑定调用现有 C++ InferShapeUtil 能力,不修改原有 C++ 推导实现,并 补充了 Python 参数校验、接口导出、示例和文档。 ## 变更类型 - [ ] 🐛 Bug 修复 - [x] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [x] 📝 文档内容更新 ## 关联的Issue 关联 Issue:#299 ## 如何测试 1. 新增 Python UT,覆盖以下场景: - 从 Node 推导 replacement graph; - 从 SubgraphBoundary 推导 replacement graph; - 从 MatchResult 推导 replacement graph; - 非法 replacement、非法 source 和空 graph 参数校验。 2. 更新 PatternFusionPass 和 DecomposePass 测试,验证 Python 接口在实际 Pass 执行流程中 的调用。 3. 执行 Python 语法检查、Ruff 检查、clang-format 检查和差异检查。 4. 执行 Python Pass 相关 UT/ST。 ## 核对清单 - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如:feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于 commit message的格式、无效commit的合并等 ## 其他信息 1. C++ 推导核心实现保持不变,仅新增 Python 绑定以复用现有 InferShapeUtil 能力。 2. Python 公开接口为: ```python from ge.passes import infer_shape infer_shape(replacement, source) 3. 当前接口实现保留 Python 层参数校验,以避免 ASan 环境下 C++ 异常跨动态库传播导致的问 题。 4. MatchResult、Node 和 SubgraphBoundary 的底层对象均通过现有绑定机制访问,不复制图对 象。 See merge request: cann/ge!4114 | 20 天前 | |
【PR】: fix: 修复融合pass编译失败 Co-authored-by: hugo111<zhaoxinxin1@huawei.com> # message auto-generated for no-merge-commit merge: !3787 merge fix_pass into develop 【PR】: fix: 修复融合pass编译失败 Created-by: hugo111 Commit-by: hugo111 Merged-by: cann-robot Description: # Pull Request ## 描述 decompose_grouped_conv_to_splited_pass.cpp 修复编译失败 ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [x] 🐛 Bug 修复 - [ ] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [x] 📝 文档内容更新 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在当前页面的右侧'关联Issue'部分添加相应Issue链接,并勾选'合并后关闭已关联的 Issue'选项。 --> ## 如何测试 描述测试此变更的步骤和前提条件: 1. 2. ## 核对清单 <!-- [x] 表示选中 --> - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如: feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 在此添加任何其他关于本次 PR 的说明。 See merge request: cann/ge!3787 | 1 个月前 | |
feat: 新增4个融合pass样例 Co-authored-by: qq_45842700<caodazhou@huawei.com> # message auto-generated for no-merge-commit merge: !3999 merge feat/add-fusion-pass-examples into develop feat: 新增4个融合pass样例 Created-by: qq_45842700 Commit-by: qq_45842700 Merged-by: cann-robot Description: # Pull Request ## 描述 新增 4 个融合 pass 样例: - **graph_base_pass/4_mmoe_bmm_split_pass**:基于 REGISTER_CUSTOM_PASS 注册,针对 MMOE 网络非首层多个同源 MatMul,通过 Pack + BatchMatMulV2 + Split + Squeeze 合并为批量矩阵乘法 - **graph_base_pass/5_mmoe_matmul_pass**:基于 REGISTER_CUSTOM_PASS 注册,针对 MMOE 网络首层多个同源 MatMul,通过 Concat + MatMul + SplitV 合并为单个大尺寸 MatMul - **pattern_base_pass/8_bmm_tile_pass**:基于 PatternFusionPass 注册,消除共享权重场景下冗余的 Tile 算子,利用 BatchMatMulV2 首维广播能力替代显式数据扩展 - **pattern_base_pass/9_bmm_to_mul_reduce_pass**:基于 PatternFusionPass 注册,将 n=1 且 k<=16 的 BatchMatMulV2 改写为 Mul + ReduceSumD,利用 vector 单元提升性能 ## 变更类型 - [x] ✨ 新功能 - [x] 📝 文档内容更新 ## 关联的Issue ## 如何测试 1. 进入各 pass 的 cpp 目录,执行 mkdir build && cd build && cmake .. && make 验证编译通过 2. 执行 make install 安装 pass so,使用 quick_verify.sh 脚本验证融合效果 3. 执行 make clean_custom_pass 清理安装的 pass so ## 核对清单 - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如:feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定 ## 其他信息 4 个样例覆盖 graph_base_pass 和 pattern_base_pass 两种注册方式,均提供 C++ 源码、CMakeLists、中英文 README、ONNX 生成脚本和一键验证脚本。 See merge request: cann/ge!3999 | 1 个月前 | |
feat: 新增4个融合pass样例 Co-authored-by: qq_45842700<caodazhou@huawei.com> # message auto-generated for no-merge-commit merge: !3999 merge feat/add-fusion-pass-examples into develop feat: 新增4个融合pass样例 Created-by: qq_45842700 Commit-by: qq_45842700 Merged-by: cann-robot Description: # Pull Request ## 描述 新增 4 个融合 pass 样例: - **graph_base_pass/4_mmoe_bmm_split_pass**:基于 REGISTER_CUSTOM_PASS 注册,针对 MMOE 网络非首层多个同源 MatMul,通过 Pack + BatchMatMulV2 + Split + Squeeze 合并为批量矩阵乘法 - **graph_base_pass/5_mmoe_matmul_pass**:基于 REGISTER_CUSTOM_PASS 注册,针对 MMOE 网络首层多个同源 MatMul,通过 Concat + MatMul + SplitV 合并为单个大尺寸 MatMul - **pattern_base_pass/8_bmm_tile_pass**:基于 PatternFusionPass 注册,消除共享权重场景下冗余的 Tile 算子,利用 BatchMatMulV2 首维广播能力替代显式数据扩展 - **pattern_base_pass/9_bmm_to_mul_reduce_pass**:基于 PatternFusionPass 注册,将 n=1 且 k<=16 的 BatchMatMulV2 改写为 Mul + ReduceSumD,利用 vector 单元提升性能 ## 变更类型 - [x] ✨ 新功能 - [x] 📝 文档内容更新 ## 关联的Issue ## 如何测试 1. 进入各 pass 的 cpp 目录,执行 mkdir build && cd build && cmake .. && make 验证编译通过 2. 执行 make install 安装 pass so,使用 quick_verify.sh 脚本验证融合效果 3. 执行 make clean_custom_pass 清理安装的 pass so ## 核对清单 - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如:feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定 ## 其他信息 4 个样例覆盖 graph_base_pass 和 pattern_base_pass 两种注册方式,均提供 C++ 源码、CMakeLists、中英文 README、ONNX 生成脚本和一键验证脚本。 See merge request: cann/ge!3999 | 1 个月前 | |
fix: fix GraphNodeSettedFormatPass code data Co-authored-by: lushiming0<lushiming1@h-partners.com> # message auto-generated for no-merge-commit merge: !4442 merge lsmge_20260818 into develop fix: fix GraphNodeSettedFormatPass code data Created-by: lushiming0 Commit-by: lushiming0 Merged-by: cann-robot Description: # Pull Request ## 描述 修复 GraphNodeSettedFormatPass 的代码位置和资料中的一些错误描述。 ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [x] 🐛 Bug 修复 - [ ] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在当前页面的右侧'关联Issue'部分添加相应Issue链接,并勾选'合并后关闭已关联的 Issue'选项。 --> ## 如何测试 描述测试此变更的步骤和前提条件: 1. GraphNodeSettedFormatPass 测试方法相同,构造图,修改 format。 2. 通过 dump 图检查修改是否符合预期。 ## 核对清单 <!-- [x] 表示选中 --> - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如: feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 在此添加任何其他关于本次 PR 的说明。 See merge request: cann/ge!4442 | 14 小时前 | |
fix: fix GraphNodeSettedFormatPass code data Co-authored-by: lushiming0<lushiming1@h-partners.com> # message auto-generated for no-merge-commit merge: !4442 merge lsmge_20260818 into develop fix: fix GraphNodeSettedFormatPass code data Created-by: lushiming0 Commit-by: lushiming0 Merged-by: cann-robot Description: # Pull Request ## 描述 修复 GraphNodeSettedFormatPass 的代码位置和资料中的一些错误描述。 ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [x] 🐛 Bug 修复 - [ ] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在当前页面的右侧'关联Issue'部分添加相应Issue链接,并勾选'合并后关闭已关联的 Issue'选项。 --> ## 如何测试 描述测试此变更的步骤和前提条件: 1. GraphNodeSettedFormatPass 测试方法相同,构造图,修改 format。 2. 通过 dump 图检查修改是否符合预期。 ## 核对清单 <!-- [x] 表示选中 --> - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如: feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 在此添加任何其他关于本次 PR 的说明。 See merge request: cann/ge!4442 | 14 小时前 |
融合Pass样例
本目录提供了继承GE提供的类并重写其方法来实现自定义融合pass的相关样例:
| 样例 | 样例链接 |
|---|---|
| MatMul+Add融合为GEMM自定义pass样例 | README |
MatMul+Add融合为GEMM自定义pass样例(Python版本,演示 @pattern 表达式写法) |
README |
| capture tensor 功能的使用 | README |
| capture tensor 功能的使用(Python版本) | README |
| PatternMatcherConfig 功能的使用 | README |
PatternMatcherConfig 功能的使用(Python版本,演示 @pattern 表达式写法) |
README |
| 删除加零操作的自定义pass样例 | README |
删除加零操作的自定义pass样例(Python版本,演示 @pattern 表达式写法) |
README |
| 自定义算子的自定义pass样例 | README |
自定义算子的自定义pass样例(Python 版本,演示 @pattern 表达式写法) |
README |
| 拆分分组卷积的自定义pass样例 | README |
| 拆分分组卷积的自定义pass样例(Python版本) | README |
| BatchMatMul展平为MatMul的自定义pass样例 | README |
| BmmTile融合(删除冗余Tile)自定义pass样例 | README |
| BatchMatMulV2转Mul+ReduceSumD自定义pass样例 | README |
开发指南
建议阅读机制说明后,再选择语言指南: