| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
refactor: 统一多流接口参数、可见性声明和示例文件头 Co-authored-by: KenChow<zhouchen53@huawei.com> # message auto-generated for no-merge-commit merge: !4827 merge refactor-step-recorder-visibility into develop refactor: 统一多流接口参数、可见性声明和示例文件头 Created-by: KenChow Commit-by: KenChow Merged-by: cann-robot Description: # Pull Request ## 描述 统一多流相关接口的参数限定符和可见性声明,并统一示例 Python 脚本文件头。 - StreamUtils::ParseAutoMultistreamParallelMode 的 from_graph、CoreNumUtils::FillCoreNumOptions 的两项核数参数,以及 StepScope 构造函数、Stop、Record 的按值参数,定义统一去掉顶层 const,与头文件声明一致。保留 const char *site 和 const std::string &mode 的只读语义;调用方用于接收配置来源的 bool from_graph 保持可写。 - step_recorder 使用 common/ge_visibility.h 的 VISIBILITY_EXPORT,移除仅为获取可见性宏而包含的对外错误码头。前向声明的可见性宏同步替换。 - 统一 examples/ 下三个 Python 脚本的 shebang、编码声明及许可证块格式。 ## 变更类型 - [x] 💄 代码风格更新 - [x] ♻️ 重构 ## 如何测试 - 本次变更的三个代码文件已通过本地 pre-commit 检查,包括 clang-format、codespell 和 OAT。 - 五处接口的声明与定义参数列表一致性检查通过;源文件差异检查确认仅删除顶层 const,函数体逻辑不变。 - StepScope 头文件独立编译检查通过:g++ -std=c++14 -Wall -Wextra -Werror -fsyntax-only -I inc/framework -I runtime/v1,覆盖构造与 Stop 调用。 - 前两次提交的文件已通过此前本地 pre-commit 检查;完整编译及 UT/ST 回归由重新触发的 CI 验证。 ## 风险与兼容性影响 按值参数的顶层 const 调整不改变函数类型或 ABI。site 指向内容和 mode 引用的只读语义保持不变;核数配置、模式解析及打点行为保持不变。 davinci_executor 中两个可见性宏的导出效果一致;未定义 FUNC_VISIBILITY 的消费方现在显式声明 default visibility。Python 文件仅修改注释行。 See merge request: cann/ge!4827 | 6 天前 | |
fix: improve log usability Co-authored-by: m0_50621083<hongyuecheng@huawei.com> # message auto-generated for no-merge-commit merge: !4556 merge CANN-log-evaluation-develop into develop fix: improve log usability Created-by: m0_50621083 Commit-by: m0_50621083 Merged-by: cann-robot Description: # Pull Request ## 描述 本次修改针对 GE 代码中的日志易用性问题进行整改,主要包括: - 修复日志中的英文拼写及语法问题; - 优化日志提示语义和表达; - 补充部分日志中的单位及上下文信息; - 统一部分日志及注释的英文表达; - 优化个别不规范的日志输出方式。 本次修改主要涉及日志和提示文本,不改变核心功能逻辑。 ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [x] 🐛 Bug 修复 - [ ] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的Issue 无关联Issue <!-- 如果这个PR是为了解决特定的Issue,请在当前页面的右侧'关联Issue'部分添加相应Issue链接,并勾选'合并后关闭已关联的 Issue'选项。 --> ## 如何测试 描述测试此变更的步骤和前提条件: 1. 使用 git diff 对本次修改内容进行检查,确认修改范围均属于日志易用性整改。 2. 使用 git diff --check 检查代码格式,确认不存在 trailing whitespace 等格式问题。 3. 检查日志字符串修改前后的参数及格式化占位符,确认日志参数与原有逻辑保持一致。 4. 确认本次修改主要涉及日志、提示信息及相关文本,不影响原有核心功能逻辑。 ## 核对清单 <!-- [x] 表示选中 --> - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [ ] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如: feat:, fix:) - [ ] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 本次为日志易用性专项整改,修改范围涉及多个模块,主要针对现有日志中的拼写、语法、语义表达、单位信息以及日志输出规范进行优化。 相关修改不涉及对外接口变更,不改变现有业务流程及核心功能逻辑。 See merge request: cann/ge!4556 | 15 天前 | |
fix:improve log usability-0910-1 Co-authored-by: m0_50621083<hongyuecheng@huawei.com> # message auto-generated for no-merge-commit merge: !4893 merge CANN-log-evaluation-develop-0910-1 into develop fix:improve log usability-0910-1 Created-by: m0_50621083 Commit-by: m0_50621083 Merged-by: cann-robot Description: # Pull Request ## 描述 依据日志易用性整改专项(A5日志燎原 / 昇腾&天马日志规范)评审结果,对 GE 日志进行整改,共涉及 21 个文件、25 处日志语句: 1. **失败路径日志级别提升**(7 处):将 7 处失败路径的 INFO 日志提升为 WARNING,避免按级别过滤排障时遗漏失败记录(deploy_planner.cc、dynamic_model_executor.cc、ops_parallel_rule_json_file.cpp、cpu_optimizer.cpp、rts_ops_kernel_builder.cc、rts_ffts_plus_ops_kernel_builder.cc、json_util.cc)。 2. **日志消息双空格清理**(约 17 处):清理消息中部的连续双空格为单空格(llm_log.h、kernel_info.cc、stream_active_op.cc、om2_model_executor.cc 等 12 个文件)。 3. **消息中部换行符移除**(1 处):inference_rule.cc:827 移除 GELOGE 消息中的 \n,避免单条日志被拆分为多行。 4. **双空格修正**(2 处):graph_utils.cc:3152、node.cc:140。 ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [x] 🐛 Bug 修复 - [ ] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的Issue 无。 <!-- 如果这个PR是为了解决特定的Issue,请在当前页面的右侧'关联Issue'部分添加相应Issue链接,并勾选'合并后关闭已关联的 Issue'选项。 --> ## 如何测试 描述测试此变更的步骤和前提条件: 1. 执行 bash build.sh(或对应组件构建)确认编译通过。 2. 构造触发失败路径的场景,确认日志以 WARNING 级别输出、不被 INFO 过滤遗漏。 3. 确认日志消息中无连续双空格及中部换行符。 ## 核对清单 <!-- [x] 表示选中 --> - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [ ] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如:feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 - 修改来源:ge_log_review.xlsx 与 ge_supplementary_log_review.xlsx 两份评审结果。 - 仅调整日志级别与文案格式,不涉及功能逻辑变更,保留了原 ret 码与变量值。 - 提升失败路径日志级别并清理日志格式问题。 See merge request: cann/ge!4893 | 4 天前 | |
fix:improve log usability-0910 Co-authored-by: m0_50621083<hongyuecheng@huawei.com> # message auto-generated for no-merge-commit merge: !4876 merge CANN-log-evaluation-develop-0910 into develop fix:improve log usability-0910 Created-by: m0_50621083 Commit-by: m0_50621083 Merged-by: cann-robot Description: # Pull Request ## 描述 本次提交基于 CANN 日志易用性评测工具的扫描结果,对 GE 仓库中的日志问题进行整改,主要包括: - 修正日志中的英文拼写和语法错误 - 补充不完整的错误描述 - 优化部分日志表达,使错误原因和处理建议更加明确 - 修正不规范的日志输出内容 - 为涉及容量、内存等数值的日志补充单位 本次仅修改日志文案及相关输出表达,不改变业务逻辑、控制流程、算法和接口行为。 ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新功能 - [x] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的Issue 无。 <!-- 如果这个PR是为了解决特定的Issue,请在当前页面的右侧'关联Issue'部分添加相应Issue链接,并勾选'合并后关闭已关联的 Issue'选项。 --> ## 如何测试 描述测试此变更的步骤和前提条件: 1. 运行项目 pre-commit 检查,确认格式、拼写和合规检查通过。 2. 运行 PR 编译及 UT/ST 流水线,确认相关门禁通过。 3. 检查代码差异,确认仅修改日志文案,不涉及业务逻辑、控制流和算法。 ## 核对清单 <!-- [x] 表示选中 --> - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [ ] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如: feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 本次整改仅修改日志文案与日志输出接口,不改变任何业务逻辑、控制流、算法。 See merge request: cann/ge!4876 | 4 天前 | |
fix:improve log usability-0910 Co-authored-by: m0_50621083<hongyuecheng@huawei.com> # message auto-generated for no-merge-commit merge: !4876 merge CANN-log-evaluation-develop-0910 into develop fix:improve log usability-0910 Created-by: m0_50621083 Commit-by: m0_50621083 Merged-by: cann-robot Description: # Pull Request ## 描述 本次提交基于 CANN 日志易用性评测工具的扫描结果,对 GE 仓库中的日志问题进行整改,主要包括: - 修正日志中的英文拼写和语法错误 - 补充不完整的错误描述 - 优化部分日志表达,使错误原因和处理建议更加明确 - 修正不规范的日志输出内容 - 为涉及容量、内存等数值的日志补充单位 本次仅修改日志文案及相关输出表达,不改变业务逻辑、控制流程、算法和接口行为。 ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新功能 - [x] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的Issue 无。 <!-- 如果这个PR是为了解决特定的Issue,请在当前页面的右侧'关联Issue'部分添加相应Issue链接,并勾选'合并后关闭已关联的 Issue'选项。 --> ## 如何测试 描述测试此变更的步骤和前提条件: 1. 运行项目 pre-commit 检查,确认格式、拼写和合规检查通过。 2. 运行 PR 编译及 UT/ST 流水线,确认相关门禁通过。 3. 检查代码差异,确认仅修改日志文案,不涉及业务逻辑、控制流和算法。 ## 核对清单 <!-- [x] 表示选中 --> - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [ ] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如: feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 本次整改仅修改日志文案与日志输出接口,不改变任何业务逻辑、控制流、算法。 See merge request: cann/ge!4876 | 4 天前 | |
fix:improve log usability-0910 Co-authored-by: m0_50621083<hongyuecheng@huawei.com> # message auto-generated for no-merge-commit merge: !4876 merge CANN-log-evaluation-develop-0910 into develop fix:improve log usability-0910 Created-by: m0_50621083 Commit-by: m0_50621083 Merged-by: cann-robot Description: # Pull Request ## 描述 本次提交基于 CANN 日志易用性评测工具的扫描结果,对 GE 仓库中的日志问题进行整改,主要包括: - 修正日志中的英文拼写和语法错误 - 补充不完整的错误描述 - 优化部分日志表达,使错误原因和处理建议更加明确 - 修正不规范的日志输出内容 - 为涉及容量、内存等数值的日志补充单位 本次仅修改日志文案及相关输出表达,不改变业务逻辑、控制流程、算法和接口行为。 ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新功能 - [x] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的Issue 无。 <!-- 如果这个PR是为了解决特定的Issue,请在当前页面的右侧'关联Issue'部分添加相应Issue链接,并勾选'合并后关闭已关联的 Issue'选项。 --> ## 如何测试 描述测试此变更的步骤和前提条件: 1. 运行项目 pre-commit 检查,确认格式、拼写和合规检查通过。 2. 运行 PR 编译及 UT/ST 流水线,确认相关门禁通过。 3. 检查代码差异,确认仅修改日志文案,不涉及业务逻辑、控制流和算法。 ## 核对清单 <!-- [x] 表示选中 --> - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [ ] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如: feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 本次整改仅修改日志文案与日志输出接口,不改变任何业务逻辑、控制流、算法。 See merge request: cann/ge!4876 | 4 天前 | |
feat: 支持自动多流配置与自动寻优工作流 Co-authored-by: KenChow<zhouchen53@huawei.com> # message auto-generated for no-merge-commit merge: !4301 merge multi_stream_custom_pass into develop feat: 支持自动多流配置与自动寻优工作流 Created-by: KenChow Commit-by: KenChow Merged-by: cann-robot Description: # Pull Request ## 描述 新增 GE 自动多流的配置入口与自动寻优工作流,使用户无需修改模型代码即可选择、验证并挑选最优的多流并行策略。 **1. 自动多流配置入口(compiler)** - StreamUtils 新增 AutoMultistreamMode / AutoMultistreamConfig,统一解析 ge.autoMultistreamParallelMode 的取值:cv、LoadBalance:N、MainStream:N、WeightedLoadBalance:N(N 取值 [1, 64]),以及仅允许由自定义 Pass 通过图属性下发的 default。 - 模式来源从「仅 option」扩展为「option + 根图同名图属性」,图属性优先,便于自定义 Pass 在编译期动态切换策略。 - 收敛 LogicalStreamAllocator、EnginePartitioner 与 MiniDAGStreamPass 的门控逻辑,统一走上述解析结果,非法取值统一报错。 **2. 执行步骤打点(runtime/v1)** - 新增 runtime/v1/common/multi_stream_tuning:model_tuning_config 通过模型属性 _auto_multistream_tuning_mode 识别调优态;step_recorder 提供 RAII 的 StepScope,按 STEP 日志输出单步耗时。 - 非调优态(mode 为空)退化为空对象,不取时间戳、不分配资源,生产路径零开销;同线程仅统计最外层执行,避免嵌套重复打点。 - 打点接入 DavinciModel(NnExecute / Run)与 RT2.0 ModelV2Executor,覆盖 ACL、静态执行器、Hybrid 与 RT2.0 四条执行路径。 **3. 自动寻优样例(examples/multi_stream_autotune)** - ge_ms_autotune.py:候选模式批量编译、OM 复用、输出一致性校验、耗时统计与最优策略推荐。 - 配套自定义 Pass(下发 auto_multistream_tuning_graph 图属性)、sample_run.py 运行脚本及中英文 README。 **4. 测试** - 新增/补充 UT 与 ST,覆盖模式解析与非法值分支、门控跳过分支、打点记录与执行器集成路径。 ## 变更类型 <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [x] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [x] 📦 构建过程或辅助工具的变动 - [x] 📝 文档内容更新 ## 关联的Issue 无关联 Issue。 ## 如何测试 前提条件:已安装 CANN Toolkit,并 source <ASCEND_INSTALL_PATH>/set_env.sh。 1. 编译 UT/ST: bash cmake -DCMAKE_BUILD_TYPE=GCOV -DENABLE_OPEN_SRC=True -DENABLE_GE_UT=ON -DENABLE_GE_ST=ON \ -DENABLE_TEST=True -DENABLE_PKG=ON -DASCEND_INSTALL_PATH=${ASCEND_INSTALL_PATH} \ -S . -B cmake-build-gcov make -C cmake-build-gcov ut_libge_multiparts_utest ut_libge_distinct_load_utest \ ut_fast_runtime2_test graph_engine_test st_fast_runtime2_test -j$(nproc) 2. 执行本次新增/修改的用例: bash unset LD_LIBRARY_PATH; unset ASCEND_OPP_PATH ./cmake-build-gcov/ut_libge_multiparts_utest --gtest_filter='*MultiStreamTuning*:*StreamUtils*:*DagStreamAllocatorPass*' ./cmake-build-gcov/ut_libge_distinct_load_utest --gtest_filter='*DavinciModel*' ./cmake-build-gcov/ut_fast_runtime2_test --gtest_filter='*CustomPass*:*ModelV2ExecutorBuilder*' ./cmake-build-gcov/graph_engine_test --gtest_filter='*MultiStreamTuning*:*DagStreamAllocatorPass*' ./cmake-build-gcov/st_fast_runtime2_test --gtest_filter='*MultiStream*' 3. 运行自动寻优样例(端到端): bash cd examples/multi_stream_autotune # 编译并安装寻优自定义 Pass cmake -S custom_pass -B build && cmake --build build --parallel # 单独跑一次被测样例,确认多流生效 GE_AUTO_MULTISTREAM_PARALLEL_MODE=LoadBalance:4 python3 sample_run.py --steps 12 --dim 512 # 批量寻优并查看推荐结果 python3 ge_ms_autotune.py --run-command "python3 sample_run.py --steps 12" \ --strategies LoadBalance,MainStream --streams 2,4,8 --repeat 3 --output-dir ./tune_out 预期:各候选配置的 STEP 打点被正确解析,输出耗时排名与推荐配置;详细步骤与参数见 examples/multi_stream_autotune/README.md。 ## 核对清单 <!-- [x] 表示选中 --> - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如:feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 - 本 PR 不改变默认行为:未配置 ge.autoMultistreamParallelMode 时编译流程与打点逻辑保持原状。 - git diff --check origin/develop...HEAD 的行尾提示仅涉及 3 个上游原本即全量使用 CRLF 的测试文件,本次保持其既有行尾格式,未引入行尾转换。 See merge request: cann/ge!4301 | 26 天前 |
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
| 6 天前 | ||
| 15 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 26 天前 |