| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
docs: 【直播作业】填写 YOLOv13 最优多流配置(#516) Co-authored-by: Wjieee<1731907853@qq.com> # message auto-generated for no-merge-commit merge: !4429 merge develop into develop docs: 【直播作业】填写 YOLOv13 最优多流配置(#516) Created-by: Wjieee Commit-by: Wjieee Merged-by: cann-robot Description: ## 基本信息 - **所选 Example**:YOLOv13 - **CANNLab 环境**:Ubuntu 20.04 + aarch64 - **CANN 版本**:社区版 9.2.0 (Weekly) - **芯片规格**:Ascend910 (NPU Name: 9362),soc_version=Ascend910_9362 - **关联 Issue**:[#516]https://gitcode.com/cann/ge/issues/516 ## 测试命令 ### ATC 编译命令(以最优配置为例) bash atc --model=yolov13n.onnx \ --framework=5 \ --output=./model/yolov13_LoadBalance_55 \ --soc_version=Ascend910_9362 \ --input_shape="images:1,3,640,640" \ --output_type=FP32 \ --multi_stream_parallel_mode=LoadBalance:55 ### 推理测试命令 bash ./out/yolov13_main \ --model=./model/yolov13_LoadBalance_55.om \ --input=./data/bus.bin \ --warmup-runs=10 \ --runs=90 ## 固定参数 - ONNX 模型:yolov13n.onnx(input_shape="images:1,3,640,640") - 输入数据:bus.bin - soc_version:Ascend910_9362 - --warmup-runs=10 - --runs=90 - --multi_stream_parallel_mode 为唯一寻优变量 ## 测试结果 | 配置角色 | 多流配置 | 主评价指标平均耗时(ms) | 正式统计任务数 | |:---|:---|:---|:---| | Base 配置 | 未配置多流参数 | 2.631 | 90 | | 候选配置 | cv | 2.568 | 90 | | 候选配置 | LoadBalance:1 | 2.797 | 90 | | 候选配置 | LoadBalance:2 | 2.613 | 90 | | 候选配置 | LoadBalance:3 | 2.386 | 90 | | 候选配置 | LoadBalance:4 | 2.472 | 90 | | 候选配置 | LoadBalance:5 | 2.281 | 90 | | 候选配置 | LoadBalance:6 | 2.291 | 90 | | 候选配置 | LoadBalance:7 | 2.334 | 90 | | 候选配置 | LoadBalance:8 | 2.270 | 90 | | 候选配置 | LoadBalance:9 | 2.422 | 90 | | 候选配置 | LoadBalance:10 | 2.308 | 90 | | 候选配置 | LoadBalance:11 | 2.421 | 90 | | 候选配置 | LoadBalance:12 | 2.450 | 90 | | 候选配置 | LoadBalance:13 | 2.462 | 90 | | 候选配置 | LoadBalance:14 | 2.277 | 90 | | 候选配置 | LoadBalance:15 | 2.363 | 90 | | 候选配置 | LoadBalance:16 | 2.412 | 90 | | 候选配置 | LoadBalance:17 | 2.281 | 90 | | 候选配置 | LoadBalance:18 | 2.302 | 90 | | 候选配置 | LoadBalance:19 | 2.289 | 90 | | 候选配置 | LoadBalance:20 | 2.428 | 90 | | 候选配置 | LoadBalance:21 | 2.283 | 90 | | 候选配置 | LoadBalance:22 | 2.489 | 90 | | 候选配置 | LoadBalance:23 | 2.285 | 90 | | 候选配置 | LoadBalance:24 | 2.269 | 90 | | 候选配置 | LoadBalance:25 | 2.305 | 90 | | 候选配置 | LoadBalance:26 | 2.277 | 90 | | 候选配置 | LoadBalance:27 | 2.325 | 90 | | 候选配置 | LoadBalance:28 | 2.442 | 90 | | 候选配置 | LoadBalance:29 | 2.416 | 90 | | 候选配置 | LoadBalance:30 | 2.263 | 90 | | 候选配置 | LoadBalance:31 | 2.290 | 90 | | 候选配置 | LoadBalance:32 | 2.423 | 90 | | 候选配置 | LoadBalance:33 | 2.438 | 90 | | 候选配置 | LoadBalance:34 | 2.423 | 90 | | 候选配置 | LoadBalance:35 | 2.419 | 90 | | 候选配置 | LoadBalance:36 | 2.418 | 90 | | 候选配置 | LoadBalance:37 | 2.277 | 90 | | 候选配置 | LoadBalance:38 | 2.270 | 90 | | 候选配置 | LoadBalance:39 | 2.271 | 90 | | 候选配置 | LoadBalance:40 | 2.289 | 90 | | 候选配置 | LoadBalance:41 | 2.271 | 90 | | 候选配置 | LoadBalance:42 | 2.289 | 90 | | 候选配置 | LoadBalance:43 | 2.441 | 90 | | 候选配置 | LoadBalance:44 | 2.414 | 90 | | 候选配置 | LoadBalance:45 | 2.424 | 90 | | 候选配置 | LoadBalance:46 | 2.269 | 90 | | 候选配置 | LoadBalance:47 | 2.274 | 90 | | 候选配置 | LoadBalance:48 | 2.272 | 90 | | 候选配置 | LoadBalance:49 | 2.301 | 90 | | 候选配置 | LoadBalance:50 | 2.275 | 90 | | 候选配置 | LoadBalance:51 | 2.270 | 90 | | 候选配置 | LoadBalance:52 | 2.438 | 90 | | 候选配置 | LoadBalance:53 | 2.413 | 90 | | 候选配置 | LoadBalance:54 | 2.429 | 90 | | **最优配置** | **LoadBalance:55** | **2.261** | **90** | | 候选配置 | LoadBalance:56 | 2.267 | 90 | | 候选配置 | LoadBalance:57 | 2.295 | 90 | | 候选配置 | LoadBalance:58 | 2.287 | 90 | | 候选配置 | LoadBalance:59 | 2.279 | 90 | | 候选配置 | LoadBalance:60 | 2.277 | 90 | | 候选配置 | LoadBalance:61 | 2.445 | 90 | | 候选配置 | LoadBalance:62 | 2.421 | 90 | | 候选配置 | LoadBalance:63 | 2.428 | 90 | | 候选配置 | LoadBalance:64 | 2.272 | 90 | | 候选配置 | MainStream:1 | 2.644 | 90 | | 候选配置 | MainStream:2 | 2.741 | 90 | | 候选配置 | MainStream:3 | 2.662 | 90 | | 候选配置 | MainStream:4 | 2.489 | 90 | | 候选配置 | MainStream:5 | 2.651 | 90 | | 候选配置 | MainStream:6 | 2.613 | 90 | | 候选配置 | MainStream:7 | 2.622 | 90 | | 候选配置 | MainStream:8 | 2.618 | 90 | | 候选配置 | MainStream:9 | 2.453 | 90 | | 候选配置 | MainStream:10 | 2.472 | 90 | | 候选配置 | MainStream:11 | 2.628 | 90 | | 候选配置 | MainStream:12 | 2.625 | 90 | | 候选配置 | MainStream:13 | 2.491 | 90 | | 候选配置 | MainStream:14 | 2.631 | 90 | | 候选配置 | MainStream:15 | 2.466 | 90 | | 候选配置 | MainStream:16 | 2.480 | 90 | | 候选配置 | MainStream:17 | 2.471 | 90 | | 候选配置 | MainStream:18 | 2.483 | 90 | | 候选配置 | MainStream:19 | 2.469 | 90 | | 候选配置 | MainStream:20 | 2.480 | 90 | | 候选配置 | MainStream:21 | 2.505 | 90 | | 候选配置 | MainStream:22 | 2.644 | 90 | | 候选配置 | MainStream:23 | 2.488 | 90 | | 候选配置 | MainStream:24 | 2.643 | 90 | | 候选配置 | MainStream:25 | 2.617 | 90 | | 候选配置 | MainStream:26 | 2.618 | 90 | | 候选配置 | MainStream:27 | 2.612 | 90 | | 候选配置 | MainStream:28 | 2.461 | 90 | | 候选配置 | MainStream:29 | 2.464 | 90 | | 候选配置 | MainStream:30 | 2.623 | 90 | | 候选配置 | MainStream:31 | 2.618 | 90 | | 候选配置 | MainStream:32 | 2.488 | 90 | | 候选配置 | MainStream:33 | 2.625 | 90 | | 候选配置 | MainStream:34 | 2.468 | 90 | | 候选配置 | MainStream:35 | 2.473 | 90 | | 候选配置 | MainStream:36 | 2.475 | 90 | | 候选配置 | MainStream:37 | 2.478 | 90 | | 候选配置 | MainStream:38 | 2.474 | 90 | | 候选配置 | MainStream:39 | 2.479 | 90 | | 候选配置 | MainStream:40 | 2.502 | 90 | | 候选配置 | MainStream:41 | 2.644 | 90 | | 候选配置 | MainStream:42 | 2.494 | 90 | | 候选配置 | MainStream:43 | 2.650 | 90 | | 候选配置 | MainStream:44 | 2.615 | 90 | | 候选配置 | MainStream:45 | 2.623 | 90 | | 候选配置 | MainStream:46 | 2.619 | 90 | | 候选配置 | MainStream:47 | 2.454 | 90 | | 候选配置 | MainStream:48 | 2.471 | 90 | | 候选配置 | MainStream:49 | 2.629 | 90 | | 候选配置 | MainStream:50 | 2.625 | 90 | | 候选配置 | MainStream:51 | 2.493 | 90 | | 候选配置 | MainStream:52 | 2.630 | 90 | | 候选配置 | MainStream:53 | 2.467 | 90 | | 候选配置 | MainStream:54 | 2.480 | 90 | | 候选配置 | MainStream:55 | 2.471 | 90 | | 候选配置 | MainStream:56 | 2.484 | 90 | | 候选配置 | MainStream:57 | 2.470 | 90 | | 候选配置 | MainStream:58 | 2.481 | 90 | | 候选配置 | MainStream:59 | 2.505 | 90 | | 候选配置 | MainStream:60 | 2.638 | 90 | | 候选配置 | MainStream:61 | 2.489 | 90 | | 候选配置 | MainStream:62 | 2.641 | 90 | | 候选配置 | MainStream:63 | 2.618 | 90 | | 候选配置 | MainStream:64 | 2.616 | 90 | ## 最优配置 - **最优配置**:--multi_stream_parallel_mode=LoadBalance:55 - **Base 配置平均耗时**:2.631 ms - **最优配置平均耗时**:2.261 ms - **性能提升**:约 14.1% ## 关键日志 ### Base 配置日志 [INFO] load model /mnt/workspace/projects/ge/examples/acl/5_sample_yolov13/model/yolov13.om success. [INFO] BENCHMARK aclmdlExecute run=0 latency_us=2625 [INFO] BENCHMARK aclmdlExecute run=1 latency_us=2630 [INFO] BENCHMARK aclmdlExecute run=2 latency_us=2633 [INFO] BENCHMARK aclmdlExecute run=3 latency_us=2632 [INFO] BENCHMARK aclmdlExecute run=87 latency_us=2632 [INFO] BENCHMARK aclmdlExecute run=88 latency_us=2628 [INFO] BENCHMARK aclmdlExecute run=89 latency_us=2631 [INFO] Average aclmdlExecute latency: 2.631 ms [INFO] YOLOv13 SAMPLE PASSED. ### 最优配置 LoadBalance:55 日志 [INFO] load model /mnt/workspace/projects/ge/examples/acl/5_sample_yolov13/model/yolov13_LoadBalance_55.om success. [INFO] BENCHMARK aclmdlExecute run=0 latency_us=2269 [INFO] BENCHMARK aclmdlExecute run=1 latency_us=2267 [INFO] BENCHMARK aclmdlExecute run=2 latency_us=2266 [INFO] BENCHMARK aclmdlExecute run=3 latency_us=2258 [INFO] BENCHMARK aclmdlExecute run=87 latency_us=2257 [INFO] BENCHMARK aclmdlExecute run=88 latency_us=2280 [INFO] BENCHMARK aclmdlExecute run=89 latency_us=2285 [INFO] Average aclmdlExecute latency: 2.261 ms [INFO] YOLOv13 SAMPLE PASSED. See merge request: cann/ge!4429 | 18 天前 | |
【PR】:rename user-guides Co-authored-by: sophia1213<sophie.chen@huawei.com> # message auto-generated for no-merge-commit merge: !3814 merge develop into develop 【PR】:rename user-guides Created-by: sophia1213 Commit-by: sophia1213 Merged-by: cann-robot Description: # Pull Request ## 描述 重命名docs目录下的user-guides为user_guides。 ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [x] 📝 文档内容更新 ## 关联的Issue 无 ## 如何测试 根据最新目录进行测试 ## 核对清单 <!-- [x] 表示选中 --> - [ ] 我的代码遵循了项目的代码风格 - [ ] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [ ] 我在标题中使用了合适的类型标签(如: feat:, fix:) - [ ] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 在此添加任何其他关于本次 PR 的说明。 See merge request: cann/ge!3814 | 2 个月前 | |
feat:add license headers to annotated args examples Co-authored-by: lfz<220252399@seu.edu.cn> # message auto-generated for no-merge-commit merge: !4683 merge fix1 into develop feat:add license headers to annotated args examples Created-by: lfz2812 Commit-by: lfz Merged-by: cann-robot Description: # Pull Request ## 描述 补充4个cmake文件中的license ## 变更类型 请选择本次引入的变更类型: <!-- [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!4683 | 3 天前 | |
docs: dflow python版本要求从3.11更新为3.12 Co-authored-by: lining23666<lining.li@huawei.com> # message auto-generated for no-merge-commit merge: !4686 merge dflow into develop docs: dflow python版本要求从3.11更新为3.12 Created-by: lining23666 Commit-by: lining23666 Merged-by: cann-robot Description: # Pull Request ## 描述 dflow python因使用pybind11,要求编译时和运行时python版本一致。商发版本流水线出包的python版本已从3.11切换为3.12,本次同步更新文档及样例中写死的python 3.11版本为3.12: - docs/zh/user_guides/dflow/dflow_dev/python/quick_start.md:环境要求"当前仅支持Python3.11"改为3.12 - docs/zh/user_guides/dflow/dflow_dev/python/appendices.md:UDF工程创建命令 python3.11 改为 python3.12 - examples/dflow/python/README.md / README_en.md:python版本要求及7条样例运行命令更新为3.12 - examples/dflow/python/udf_py_ws_sample/CMakeLists.txt:find_package(Python3 3.11 EXACT ...) 改为3.12,避免3.12环境下样例构建失败 ## 变更类型 - [ ] 🐛 Bug 修复 - [ ] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [x] 📝 文档内容更新 ## 关联的Issue ## 如何测试 1. 纯文档修改 + 样例CMakeLists一行版本号变更,不在主构建路径 2. grep -r "3\.11" 确认dflow相关文档及样例无3.11残留 3. 本地pre-commit检查全部通过 ## 核对清单 - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如:feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 无 See merge request: cann/ge!4686 | 3 天前 | |
fix: 优化自定义算子推导与后端识别逻辑 | 2 天前 | |
fix: 修正融合示例中 GEMM scalar 常量类型为 float,适配算子优化支持范围 Co-authored-by: du-hua1024<duhua2@huawei.com> # message auto-generated for no-merge-commit merge: !4691 merge op into develop fix: 修正融合示例中 GEMM scalar 常量类型为 float,适配算子优化支持范围 Created-by: du-hua1024 Commit-by: du-hua1024 Merged-by: cann-robot Description: # Pull Request ## 描述 修正两个融合 Pass 示例中构造 GEMM 算子 alpha/beta 标量常量时的类型错误: CreateScalar(1)(推导为 int)改为 CreateScalar(1.0f)(float)。 当前算子优化的 scalar 常量仅支持 float 类型,原示例以 int 常量传入 es::GEMM 的 alpha/beta 参数,超出算子支持范围,示例无法按预期完成融合替换。 变更文件: - examples/fusion_pass/pattern_base_pass/2_fuse_matmul_add_pass_with_capture_tensor/cpp/src/fuse_matmul_add_pass.cpp - examples/fusion_pass/pattern_base_pass/3_fuse_matmul_add_pass_with_pattern_matcher_config/cpp/src/fuse_matmul_add_pass.cpp ## 变更类型 - [x] 🐛 Bug 修复 ## 关联的Issue ## 如何测试 1. 编译并运行 2_fuse_matmul_add_pass_with_capture_tensor 示例,确认 MatMul+Add 融合替换成功 2. 编译并运行 3_fuse_matmul_add_pass_with_pattern_matcher_config 示例,确认融合替换成功 ## 核对清单 - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如:feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 See merge request: cann/ge!4691 | 3 天前 | |
fix: precommit整改 Co-authored-by: yelongjian<yelongjian1@huawei.com> # message auto-generated for no-merge-commit merge: !3726 merge dev-precommit into develop fix: precommit整改 Created-by: yelongjian Commit-by: yelongjian Merged-by: cann-robot Description: # Pull Request ## 描述 precommit整改 ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新功能 - [x] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的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!3726 | 2 个月前 | |
docs: 完善多流寻优离线配置与输出目录 Co-authored-by: KenChow<zhouchen53@huawei.com> # message auto-generated for no-merge-commit merge: !4699 merge fix-doc-ms into develop docs: 完善多流寻优离线配置与输出目录 Created-by: KenChow Commit-by: KenChow Merged-by: cann-robot Description: # Pull Request ## 描述 1. 补充多流自动寻优工具在离线模式下编译机与执行机同机时的目标机配置示例和使用说明。 2. 允许复用已有 --output-dir,每次运行自动创建带时间戳和进程号的结果子目录,避免手动清空目录。 ## 变更类型 - [ ] 🐛 Bug 修复 - [ ] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [x] 📝 文档内容更新 ## 关联的Issue 无 ## 如何测试 - 运行 python3 examples/multi_stream_autotune/ge_ms_autotune.py --help,确认输出目录参数说明已更新。 - 使用 Python 标准库 smoke test 验证非空父目录可复用,并能创建唯一运行子目录。 - 未进行本地编译,交由流水线验证。 ## 核对清单 - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如:feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md) ## 其他信息 请在 PR 评论中输入 compile 触发流水线。 See merge request: cann/ge!4699 | 2 天前 | |
fix: precommit整改 Co-authored-by: yelongjian<yelongjian1@huawei.com> # message auto-generated for no-merge-commit merge: !3726 merge dev-precommit into develop fix: precommit整改 Created-by: yelongjian Commit-by: yelongjian Merged-by: cann-robot Description: # Pull Request ## 描述 precommit整改 ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新功能 - [x] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的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!3726 | 2 个月前 | |
feat: add Python ONNX graph callbacks Co-authored-by: gentle-knight<522025150054@smail.nju.edu.cn> # message auto-generated for no-merge-commit merge: !4583 merge feat/onnx-plugin-python-pr4-graph-callbacks-submit into develop feat: add Python ONNX graph callbacks Created-by: gentle-knight Commit-by: gentle-knight Merged-by: cann-robot Description: ## Pull Request ### 描述 将 Python ONNX Plugin 的 Graph callback 接入现有 ONNX parser,合并支持一对多图展开和子图后处理。复用现有 GraphBuilder、ParserUtils::ExpandOneToManyGraph 及 ParseSubgraphPostFn/ParseSubgraphFuncV2,不新增 onnx_node.py、Operator pybind 或第二套 parser 流程。 ### 变更类型 - [ ] 🐛 Bug 修复 - [x] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ### 关联的Issue 无。 ### 如何测试 1. Python registry/bridge 测试:39 项通过。 2. ge_python_onnx_plugin_bridge 增量构建通过。 3. 新增 C++ bridge UT 与 ONNX parser ST 源文件编译通过。 4. parser ST 覆盖真实 ONNX 一对多展开及 If 子图 callback;本地最终运行受 CANN 9.2 开发包缺失符号影响,交由远程 CI 验证。 ### 核对清单 - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如: feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ### 其他信息 本 PR 基于已合入 PR3 的最新 develop,仅包含一个代码 commit,代码增量为 523 行新增、4 行删除。设计与评审记录已更新在本地文档,未混入代码 commit。 See merge request: cann/ge!4583 | 8 天前 | |
docs: 【直播作业】填写 Recommendation 最优多流配置-v3 (#516) Co-authored-by: nimj<mengjunni00@gmail.com> # message auto-generated for no-merge-commit merge: !4435 merge develop into develop docs: 【直播作业】填写 Recommendation 最优多流配置-v3 (#516) Created-by: nimj Commit-by: nimj Merged-by: cann-robot Description: ## 备注 首次pull request(https://gitcode.com/cann/ge/merge_requests/4433) 使用邮箱错误,cla-check失败,重新提交 ## 描述 【直播作业】填写 Recommendation(DCN v2)样例的最优多流增强参数。 在 CANNLab(Ascend 910C)环境、CANN 社区版 9.2.0-beta.1 下,对 ge.autoMultistreamParallelMode 的 19 个配置(Base + cv + LoadBalance:N + MainStream:N)进行寻优,主评价指标为 Average ExecuteGraphWithStreamAsync latency,最优配置为 **MainStream:9**(0.113322 ms,较 Base 0.189378 ms **降低约 40%**)。 本次变更将 examples/recommendation/README.md 与 README_en.md 中的 <待填写>/<to-be-determined> 替换为 MainStream:9,中英文结论一致。 ## 变更类型 - [x] 📝 文档内容更新 ## 关联的 Issue #516 ## 如何测试 **环境**: - CANNLab:Ascend 910C(Ascend910_9362,单 NPU 双 die,64G HBM),驱动 npu-smi 25.5.5 - CANN 社区版 9.2.0-beta.1(Weekly,A3 系列,AArch64,openEuler,离线安装) - 代码分支:develop **测试环境截图**:  **CANN版本**  **步骤**(每个配置完全一致,仅 --multiStreamParallelMode 变化): bash cd examples/recommendation/build ./recomand_exec --runs=100 --batchSize=128 --multiInstanceNum=1 --multiStreamParallelMode=<模式> 1. Base 配置不传 --multiStreamParallelMode;候选分别传入 cv / LoadBalance:N / MainStream:N 2. 前 10 个成功任务预热不计入,后 90 个成功任务计算算术平均时延 3. 主评价指标:Average ExecuteGraphWithStreamAsync latency(ExecuteGraphWithStreamAsync + aclrtSynchronizeStream) 4. 每个配置日志均显示 Success count: 100,结果有效 ## 核对清单 - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(docs:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定 ## 其他信息 ### 完整测试结果 | 配置角色 | 多流配置 | 主评价指标平均耗时(ms) | 正式统计任务数 | |---|---|---|---| | Base 配置 | 未配置多流参数 | 0.189378(复测 0.189767) | 90 | | 候选配置 | cv | 0.171900 | 90 | | 候选配置 | LoadBalance:2 | 0.164244 | 90 | | 候选配置 | LoadBalance:4 | 0.146511 | 90 | | 候选配置 | LoadBalance:8 | 0.152900 | 90 | | 候选配置 | LoadBalance:16 | 0.144589 | 90 | | 候选配置 | MainStream:2 | 0.148067 | 90 | | 候选配置 | MainStream:4 | 0.124722 | 90 | | 候选配置 | MainStream:6 | 0.120200 | 90 | | 候选配置 | MainStream:7 | 0.118400 | 90 | | 候选配置 | MainStream:8 | 0.117856 | 90 | | **最优配置** | **MainStream:9** | **0.113322** | 90 | | 候选配置 | MainStream:10 | 0.118489 | 90 | | 候选配置 | MainStream:11 | 0.119244 | 90 | | 候选配置 | MainStream:12 | 0.112567 | 90 | | 候选配置 | MainStream:13 | 0.115256 | 90 | | 候选配置 | MainStream:14 | 0.121322 | 90 | | 候选配置 | MainStream:16 | 0.124833 | 90 | ### 最优配置结论 text ge.autoMultistreamParallelMode=MainStream:9 --multiStreamParallelMode=MainStream:9 - Base: 0.189378 ms(复测 0.189767 ms,稳定) - 最优 MainStream:9: 0.113322 ms(复测 0.113233 / 0.114222 ms,波动 <1%,稳定最优) - 时延降低约 40%(0.1894 → 0.1133 ms) > 说明: MainStream:12 初测 0.112567 ms 略低于 MainStream:9,但两次复测为 0.117122 / 0.117811 ms(回落),初测值为波动低点;MainStream:9 三次测量均稳定在 0.113~0.114 ms,故选 MainStream:9 为最优配置。 ### 关键日志(复核用) Base 配置: Run 100 inferences in 1.21777 seconds. Success count: 100 Average ExecuteGraphWithStreamAsync latency: 0.189378 ms 最优配置 MainStream:9(三次测量): Run 100 inferences in 1.99051 seconds. Success count: 100 Average ExecuteGraphWithStreamAsync latency: 0.113322 ms Run 100 inferences in 1.87045 seconds. Success count: 100 Average ExecuteGraphWithStreamAsync latency: 0.113233 ms Run 100 inferences in 1.27304 seconds. Success count: 100 Average ExecuteGraphWithStreamAsync latency: 0.114222 ms **测试截图**  See merge request: cann/ge!4435 | 18 天前 | |
feat: add Python ONNX graph callbacks Co-authored-by: gentle-knight<522025150054@smail.nju.edu.cn> # message auto-generated for no-merge-commit merge: !4583 merge feat/onnx-plugin-python-pr4-graph-callbacks-submit into develop feat: add Python ONNX graph callbacks Created-by: gentle-knight Commit-by: gentle-knight Merged-by: cann-robot Description: ## Pull Request ### 描述 将 Python ONNX Plugin 的 Graph callback 接入现有 ONNX parser,合并支持一对多图展开和子图后处理。复用现有 GraphBuilder、ParserUtils::ExpandOneToManyGraph 及 ParseSubgraphPostFn/ParseSubgraphFuncV2,不新增 onnx_node.py、Operator pybind 或第二套 parser 流程。 ### 变更类型 - [ ] 🐛 Bug 修复 - [x] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ### 关联的Issue 无。 ### 如何测试 1. Python registry/bridge 测试:39 项通过。 2. ge_python_onnx_plugin_bridge 增量构建通过。 3. 新增 C++ bridge UT 与 ONNX parser ST 源文件编译通过。 4. parser ST 覆盖真实 ONNX 一对多展开及 If 子图 callback;本地最终运行受 CANN 9.2 开发包缺失符号影响,交由远程 CI 验证。 ### 核对清单 - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如: feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ### 其他信息 本 PR 基于已合入 PR3 的最新 develop,仅包含一个代码 commit,代码增量为 523 行新增、4 行删除。设计与评审记录已更新在本地文档,未混入代码 commit。 See merge request: cann/ge!4583 | 8 天前 | |
feat: add Python ONNX graph callbacks Co-authored-by: gentle-knight<522025150054@smail.nju.edu.cn> # message auto-generated for no-merge-commit merge: !4583 merge feat/onnx-plugin-python-pr4-graph-callbacks-submit into develop feat: add Python ONNX graph callbacks Created-by: gentle-knight Commit-by: gentle-knight Merged-by: cann-robot Description: ## Pull Request ### 描述 将 Python ONNX Plugin 的 Graph callback 接入现有 ONNX parser,合并支持一对多图展开和子图后处理。复用现有 GraphBuilder、ParserUtils::ExpandOneToManyGraph 及 ParseSubgraphPostFn/ParseSubgraphFuncV2,不新增 onnx_node.py、Operator pybind 或第二套 parser 流程。 ### 变更类型 - [ ] 🐛 Bug 修复 - [x] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ### 关联的Issue 无。 ### 如何测试 1. Python registry/bridge 测试:39 项通过。 2. ge_python_onnx_plugin_bridge 增量构建通过。 3. 新增 C++ bridge UT 与 ONNX parser ST 源文件编译通过。 4. parser ST 覆盖真实 ONNX 一对多展开及 If 子图 callback;本地最终运行受 CANN 9.2 开发包缺失符号影响,交由远程 CI 验证。 ### 核对清单 - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如: feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ### 其他信息 本 PR 基于已合入 PR3 的最新 develop,仅包含一个代码 commit,代码增量为 523 行新增、4 行删除。设计与评审记录已更新在本地文档,未混入代码 commit。 See merge request: cann/ge!4583 | 8 天前 |
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
| 18 天前 | ||
| 2 个月前 | ||
| 3 天前 | ||
| 3 天前 | ||
| 2 天前 | ||
| 3 天前 | ||
| 2 个月前 | ||
| 2 天前 | ||
| 2 个月前 | ||
| 8 天前 | ||
| 18 天前 | ||
| 8 天前 | ||
| 8 天前 |