| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
feat: 为 AscendC 提供 AICPU DFX Info 设置能力 Co-authored-by: sujunwei3<sujunwei3@huawei.com> # message auto-generated for no-merge-commit merge: !3931 merge new_dev into master feat: 为 AscendC 提供 AICPU DFX Info 设置能力 Created-by: sujunwei3 Commit-by: sujunwei3 Merged-by: cann-robot Description: # Pull Request ## 描述 本 PR 为 AscendC 自定义算子在 AICPU 调度执行时提供 DFX Info 设置和 dump 能力,主要包括: 1. 新增 AicpuDfxInfo 结构体及 infoAddr 字段定义(aicpu_context.h、aicpusd_info.h、aicpu_task_struct.h) 2. SetAicpuDfxTsKernel::Compute 按 DfxCpType(AICPUSD / CUSTOM_AICPUSD)分支处理 dfx info 设置 3. AicpuCustDumpProcess::AICPUEventSetDfxInfo 接收并处理 custom_aicpusd 的 dfx info 4. aicpu_sharder 新增 aicpu context 支持 ## 变更类型 - [ ] 🐛 Bug 修复 - [x] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的Issue #805 ## 如何测试 1. **单元测试 - HWTS Kernel DFX Info** - 执行 hwts_kernel_set_dfx_info_test,验证 AICPUSD 和 CUSTOM_AICPUSD 两种 cpType 场景下 dfx info 设置正确 - 验证非法 cpType 返回 AICPU_SCHEDULE_ERROR_PARAMETER_NOT_VALID 2. **单元测试 - Custom Schedule Dump Process** - 执行 aicpu_cust_schedule_test,验证 AICPUEventSetDfxInfo 正确处理 custom_aicpusd 的 dfx info 3. **单元测试 - Aicpu Context** - 执行 aicpu_context_ut,验证 aicpu_sharder 中 aicpu context 相关功能 4. **编译构建验证** - 执行 bash build.sh 验证整包编译通过 - 执行 UT 编译:bash tests/build_ut.sh --ut=aicpu_sched ## 核对清单 - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如:feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定 ## 其他信息 - 日志格式修复:infoAddr 为 uint64_t 类型,原 %u 格式说明符在 64 位系统上会截断地址,修正为 %lu - UT 覆盖:新增 3 个测试文件,覆盖 hwts kernel dfx info、custom schedule dump、aicpu context 三个模块 See merge request: cann/runtime!3931 | 28 天前 | |
fix: runtime 仓dfx组件代码未进行代码格式化不符合代码规范,需要整改 (#840) Co-authored-by: GuoWenbo<guowenbo13@h-partners.com> # message auto-generated for no-merge-commit merge: !4361 merge fix-issue-840 into master fix: runtime 仓dfx组件代码未进行代码格式化不符合代码规范,需要整改 (#840) Created-by: GuoWenbo Commit-by: GuoWenbo Merged-by: cann-robot Description: ## 描述 - 修复摘要: runtime 仓 dfx 组件代码未进行代码格式化,不符合代码规范,需要按仓内 pre-commit / clang-format 规范整改。 - 变更范围按 /mnt/workspace/.cann_fix/runtime_issue_840_20260819153258/cann-fix-plan.md 的候选修改点汇总,不在 PR 描述中逐文件展开: - src/dfx/log - src/dfx/trace - include/dfx/base/acl_log.h - include/dfx/base/alog_pub.h - include/dfx/base/log_types.h - pkg_inc/base/dlog_pub.h - pkg_inc/base/plog.h - pkg_inc/trace/atrace_pub.h - pkg_inc/trace/atrace_types.h - pkg_inc/watchdog/awatchdog.h - pkg_inc/watchdog/awatchdog_types.h - 文件级清单以计划产物 dfx-log-trace-expanded-files.txt 和 PR Files changed 为准,PR 描述不展开完整清单,避免描述过长。 - Diff 内容不逐文件展示,本次主体为格式化整改;检视反馈补充了文件末尾换行、宏表达式括号、atrace UT 中已有 utrace_arm_utest 目标的顶层依赖入口、stacktrace 覆盖率相关既有 UT 源文件的构建入口,以及线上覆盖率 UT 暴露的 ringbuffer 并发压测用例稳定性、AtraceStackcoreParse 包装层覆盖、atrace UT stub 依赖的 adcore 头文件 include 路径和 x86 ScdThreadsUtest 栈帧用例稳定性。 ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新功能 - [x] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的Issue https://gitcode.com/cann/runtime/issues/840 ## 如何测试 - 测试结论: 格式化检查和新增覆盖率 focused 验证 PASS;ScdUtilUtest.TestScdPtraceAttach 超时已修复,完整 utrace_utest 不再因该用例超过 300s;线上覆盖率包中暴露的 RraceRbLogUtest 并发压测波动、atrace_stackcore_api.c 0 覆盖、atrace UT adcore_api.h 头文件缺失编译问题,以及 x86 ScdThreadsUtest.TestScdFramesInit/TestScdFramesMemcpyFailed 依赖真实栈展开导致的波动已补充处理。 - pre-commit run --files tests/ut/atrace/ut/utrace/testcase/stacktrace_dumper/scd_threads_utest.cc: PASS - pre-commit run --files tests/ut/atrace/ut/utrace/CMakeLists.txt tests/ut/atrace/ut/trace_server/CMakeLists.txt: PASS - pre-commit run --files tests/ut/atrace/ut/utrace/testcase/trace_rb_log_utest.cc tests/ut/atrace/ut/utrace/testcase/stacktrace_dumper/scd_process_utest.cc: PASS - git diff --check: PASS - cmake --build build --target utrace_arm_utest -- -j8: PASS - cmake --build build --target trace_server_utest -- -j8: PASS - cmake --build build --target utrace_utest -j$(nproc): PASS - build/tests/ut/atrace/ut/utrace/utrace_utest --gtest_filter='RraceRbLogUtest.TestMsgNumLTBufferSize:RraceRbLogUtest.TestMsgNumEQBufferSize:RraceRbLogUtest.TestMsgNumGTBufferSize' --gtest_repeat=10 --gtest_break_on_failure: PASS - build/tests/ut/atrace/ut/utrace/utrace_utest --gtest_filter='ScdProcessUtest.TestAtraceStackcoreParse': PASS - build/tests/ut/atrace/ut/utrace/utrace_utest --gtest_filter=StacktraceDumperBinUtest.*: PASS, 8/8 passed - build/tests/ut/atrace/ut/utrace/utrace_utest --gtest_filter=ScdUtilUtest.*: PASS, 20/20 passed;TestScdPtraceAttach 约 21-32ms。 - bash tests/build_ut.sh --ut atrace --target utrace_utest --ut_timeout=300: PASS, 296/296 passed, 总耗时 23.855s。 - bash tests/build_ut.sh --ut atrace --target utrace_utest --ut_timeout=300: PASS;本机为 aarch64,x86-only ScdThreadsUtest 不编入本地目标;本次复验生成 UT XML: utrace_utest 296/296 passed, utrace_arm_utest 2/2 passed, trace_server_utest 73/73 passed。 - bash tests/build_ut.sh --ut atrace --target utrace_utest -c --ut_timeout=300: UT 阶段 PASS, 296/296 passed;本地生成 cov/coverage.info,重点文件覆盖率: atrace_stackcore_api.c 100.0%, stacktrace_dumper_bin.c 100.0%, stacktrace_parse.c 61.7%, trace_rb_log.c 90.6%。本地 genhtml 阶段因 /cmd_line 权限问题退出,不影响 UT 通过和 LCOV 数据生成。 - 变更范围核对: 变更文件均在计划范围或检视反馈补充范围内。 - cann-fix/test report 摘要: - 测试日志包含通过信号。 - 测试日志覆盖计划测试项 1 条。 - Problems: (none)。 ## 核对清单 <!-- [x] 表示选中 --> - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [ ] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如:feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 本次变更文件数量较多,PR 描述仅保留计划范围、测试结论和风险说明;完整文件级 diff 请以 PR Files changed 页面为准。 ## 风险和遗留问题 - 风险: 格式化文件数量较多,review 噪声较高。 - 控制: 仅按仓内格式化规则处理计划范围文件,不展开无关模块;通过 pre-commit clang-format 和 git diff --check 校验。 - 遗留问题: 本地 genhtml 阶段存在 /cmd_line 权限问题,已保留 coverage.info 和 UT XML 作为验证证据;线上环境可继续以平台生成的覆盖率 HTML 为准。 See merge request: cann/runtime!4361 | 15 天前 | |
feat: 新增aclrtHostGetDevicePointerAddrRange接口 Co-authored-by: w00852749<wangyuxin46@huawei.com> # message auto-generated for no-merge-commit merge: !4097 merge feat/aclrt-host-get-device-pointer-addr-range into master feat: 新增aclrtHostGetDevicePointerAddrRange接口 Created-by: YzQnWyx Commit-by: YzQnWyx;w00852749 Merged-by: cann-robot Description: # Pull Request ## 描述 参考aclrtMemGetAddressRange接口,新增aclrtHostGetDevicePointerAddrRange接口,封装驱动接口halHostGetDevicePointerAddrRange,用于获取主机侧Device Pointer地址范围。 新增类型aclrtAddrRange(对外可见),含void *startAddr和void *endAddr两个成员。接口签名: aclError aclrtHostGetDevicePointerAddrRange(aclrtAddrRange *addrRange, uint32_t *count) - addrRange和count均为出入参 - addrRange可为空,count为空时返回ACL_ERROR_INVALID_PARAM 完整分层链路:ACL -> RT C -> ApiErrorDecorator -> ApiDecorator -> ApiImpl -> NpuDriver -> HAL,特性裁剪通过驱动weak符号实现。 ## 变更类型 - [x] 新功能 ## 关联的Issue ## 如何测试 1. ACL层UT:验证count为空返回ACL_ERROR_INVALID_PARAM、正常调用返回ACL_SUCCESS、addrRange为空返回ACL_SUCCESS、RT错误码透传 2. RT层UT:mock驱动返回DRV_ERROR_NONE,验证rtHostGetDevicePointerAddrRange返回RT_ERROR_NONE 3. 兼容性测试:验证新增profiling枚举AclrtHostGetDevicePointerAddrRange注册正确 ## 核对清单 - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签 - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定 ## 其他信息 涉及24个生产代码文件和6个测试文件修改,完整分层实现含驱动层、RT层、ACL层及对应单元测试。 See merge request: cann/runtime!4097 | 14 天前 | |
feat:清理DFX冗余头文件 Co-authored-by: yring_8<yangrui1@huawei.com> # message auto-generated for no-merge-commit merge: !2735 merge master into master feat:清理DFX冗余头文件 Created-by: yring_8 Commit-by: yring_8 Merged-by: cann-robot Description: # Pull Request ## 描述 统一 DFX 模块头文件的维护位置,删除 adump、msprof、trace 和 log 模块中的冗余副本。 主要变更: - 删除 adump、msprof、trace 目录下重复及无归属的头文件。 - 将兼容路径下的重复头文件改为软链接,保留原有引用方式。 - 将 trace 内部头文件迁移至 src/dfx/trace/inc/toolchain。 - 以 include/dfx/base/log_types.h、include/external/acl/acl_prof.h 等文件作为唯一实体。 - 调整 CMake include 路径及 adump_headers 等接口依赖。 - 调整打包配置,从实体文件位置复制头文件,确保安装包中的兼容目录仍包含普通实体文件。 - 更新 msprof、atrace、runtime 和 slog 单测的头文件依赖路径。 ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [x] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [x] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的Issue 无。 ## 如何测试 1. 执行全量构建: ```bash sh build.sh 2. 执行相关模块单元测试: bash tests/build_ut.sh --ut=adump -c bash tests/build_ut.sh --ut=msprof -c bash tests/build_ut.sh --ut=atrace -c 3. 检查打包 staging 目录,确认兼容路径中的头文件为实体文件,并与对应源文件内容一致。 ## 核对清单 <!-- [x] 表示选中 --> - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [ ] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如:feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 - 提交 ID:978532b3f84c506f4e39d613f1ee2ad750dbc0cf - 兼容目录仍保留原有头文件访问路径。 - 打包时从唯一实体文件位置复制,避免将无效软链接带入安装包。 See merge request: cann/runtime!2735 | 2 个月前 | |
feat: update .pre-commit-config.yaml for mmpa & error_manager Co-authored-by: likun104<likun104@h-partners.com> # message auto-generated for no-merge-commit merge: !3771 merge br_update_pre-commit-config.yaml into master feat: update .pre-commit-config.yaml for mmpa & error_manager Created-by: likun104 Commit-by: likun104 Merged-by: cann-robot Description: # Pull Request ## 描述 为mmpa & error_manager更新“.pre-commit-config.yaml”文件中的配置 ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [x] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在当前页面的右侧'关联Issue'部分添加相应Issue链接,并勾选'合并后关闭已关联的 Issue'选项。 --> ## 如何测试 描述测试此变更的步骤和前提条件: 1. 流水线跑通过 ## 核对清单 <!-- [x] 表示选中 --> - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如: feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 在此添加任何其他关于本次 PR 的说明。 See merge request: cann/runtime!3771 | 1 个月前 | |
【PR】: Platform支持kirin在研版本 Co-authored-by: zengjuan<zengjuan2@huawei.com> # message auto-generated for no-merge-commit merge: !4150 merge master into master 【PR】: Platform支持kirin在研版本 Created-by: zengjuan Commit-by: zengjuan Merged-by: cann-robot Description: # Pull Request ## 描述 Platform支持kirin在研版本,完成turing obp算子冒烟测试  ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在当前页面的右侧'关联Issue'部分添加相应Issue链接,并勾选'合并后关闭已关联的 Issue'选项。 --> ## 如何测试 描述测试此变更的步骤和前提条件: 1.编译正常 2.门禁正常 ## 核对清单 <!-- [x] 表示选中 --> - [ ] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [ ] 我已更新了相关的文档 - [ ] 我在标题中使用了合适的类型标签(如: feat:, fix:) - [ ] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 在此添加任何其他关于本次 PR 的说明。 See merge request: cann/runtime!4150 | 14 天前 | |
【Profiling】支持单算子调优配置block开关 Co-authored-by: chenminghao11<chenminghao11@hisilicon.com> # message auto-generated for no-merge-commit merge: !4502 merge compute into master 【Profiling】支持单算子调优配置block开关 Created-by: chenminghao11 Commit-by: chenminghao11 Merged-by: cann-robot Description: # Pull Request ## 描述 请清晰准确地描述本次 Pull Request 的意图和变更内容。 支持单算子调优配置block开关 ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [x] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在当前页面的右侧'关联Issue'部分添加相应Issue链接,并勾选'合并后关闭已关联的 Issue'选项。 --> ## 如何测试 描述测试此变更的步骤和前提条件: 1. 2. ## 核对清单 <!-- [x] 表示选中 --> - [ ] 我的代码遵循了项目的代码风格 - [ ] 我已对代码进行了自测 - [ ] 我已更新了相关的文档 - [ ] 我在标题中使用了合适的类型标签(如: feat:, fix:) - [ ] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 在此添加任何其他关于本次 PR 的说明。 See merge request: cann/runtime!4502 | 12 天前 | |
fix: 修正头文件注释中的拼写错误(infomation/flase/swtich 等) Co-authored-by: chenyang<2082464740@qq.com> # message auto-generated for no-merge-commit merge: !3927 merge fix_word into master fix: 修正头文件注释中的拼写错误(infomation/flase/swtich 等) Created-by: weixin_51634168 Commit-by: chenyang Merged-by: cann-robot Description: # fix: 修正头文件注释中的拼写错误(infomation/flase/swtich 等) ## 描述 修正代码注释和日志输出中的英文拼写错误,不涉及任何功能逻辑变更。 共修正 16 个文件、36 处拼写问题,主要包括: - infomation → information - flase → false - swtich → switch - ouput → output - adn → and - donot → don't ## 变更类型 - [ ] 🐛 Bug 修复 - [ ] ✨ 新功能 - [x] 💄 代码风格更新(格式化,局部变量) - [x] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的Issue 无 ## 如何测试 本 PR 仅修改注释与日志文本,不改变任何接口、变量名或可执行逻辑: 1. 编译验证:bash build.sh,确认编译通过无告警。 2. 变更均位于注释和字符串字面量中,git diff 逐条确认未触及代码逻辑。 ## 核对清单 - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如:feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 无 See merge request: cann/runtime!3927 | 1 个月前 | |
refactor: 按产品能力生成 arch5162 Runtime API stub Co-authored-by: zhangpengpeng8<zhangpengpeng8@hisilicon.com> # message auto-generated for no-merge-commit merge: !246 merge master into master refactor: 按产品能力生成 arch5162 Runtime API stub Created-by: zhangpengpeng8 Commit-by: zhangpengpeng8 Merged-by: cann-robot Description: # Pull Request ## 描述 本 PR 是 Runtime API 产品能力自动打桩方案的第一阶段,只迁移 arch5162,且只包含代码改动。 主要变更: 1. 新增 176 项 Runtime API 签名目录、强 stub 生成器和生成器单元测试。测试位于顶层 tests/ut/runtime/runtime/test/cmake/,并通过 runtime_utest_arch5162 的 CMake 依赖自动执行。 2. 新增 src/runtime/cmake/arch5162_unsupported_runtime_api.def,集中声明 arch5162 的 176 个不支持接口;清单与 arch5162.cmake 同目录维护。 3. runtime_api_stubs.cmake 仅允许 tiny、arch5162 这类端侧独立编译的 libruntime.so 使用;对其他产品名调用会在 CMake 配置阶段直接失败,弱覆盖也只允许用于 SHARED_LIBRARY 目标。host runtime、cmodel、静态库、Windows 和其他芯片形态保持原有源文件选择和强 API provider,不使用该弱覆盖 helper。产品 UT 只复用 .def 生成以验证返回行为。 4. RUNTIME_API_WEAK_REAL_SRC_FILES 改为由 arch5162.cmake 按产品维护:9 份原有真实源保持不变;另外 10 份真实 provider 均有对应的旧手写桩/生成桩,不允许引入没有对应桩接口的源文件。 5. arch5162 动态库通过既有 VISIBILITY_DEFAULT、RTS_API 宏按目标生成弱符号;生成的强 stub 覆盖不支持接口,并通过 function section 与 --gc-sections 回收未选中的弱实现。 6. arch5162 UT 在平台 CMake 中使用同一 .def 生成 stub,不再编译 api_c_stub.cc、api_c_mbuf_stub.cc。 7. 保留 api_c_arch5162.cc 产品特殊强实现;两份手写 stub 文件继续留在仓库中,供尚未迁移的 tiny 使用。 新增弱 provider 与 arch5162 生成桩的映射为:dqs 1、mbuf 17、snapshot 7、soma 7、standard_soc 104、api_c_task.cc 6、uvm 5、xpu 4、api_david.cc 20、api_preload_task.cc 5,合计 176。api_c_standard_soc.cc 额外的 rtMallocCached 由原有 api_c_arch5162.cc 强实现覆盖,不改变 arch5162 行为。 api_david.cc 需要保留在该列表中:文件内 20 个 C API 均对应原 api_c_stub.cc 中的 arch5162 打桩接口,现在全部由 .def 选中强 stub,弱真实函数体会被链接回收。后续若某个接口转为支持,只需从 .def 移除该接口,不再改动源文件集合。 本 PR 不修改方案文档、19 份 api_c_*.cc/api_david.cc/api_preload_task.cc、公共 src/runtime/CMakeLists.txt、runtime.cmake 或 tiny.cmake。 ## 变更类型 - [ ] Bug 修复 - [ ] 新功能 - [ ] 代码风格更新 - [x] 重构 - [x] 构建过程或辅助工具的变动 - [ ] 文档内容更新 ## 关联的Issue - 最终汇总方案与完整形态:PR4424 - PR4424 需在本 PR 合入后以最新 master 刷新依赖基线。 ## 如何测试 1. python3 -m unittest tests/ut/runtime/runtime/test/cmake/test_generate_runtime_api_stubs.py:7/7 通过;runtime_api_stub_generator_ut 目标及 runtime_utest_arch5162 依赖链均会自动执行并通过该测试。 2. pre-commit:clang-format 与 OAT 通过。 3. PRODUCT=ascend5162a 的 runtime 动态库编译通过;runtime_utest_arch5162 106/106 通过。 4. 默认 runtime 与 tiny 的 CMake 及 API 源文件对比为空,本阶段不改变其他产品。 5. arch5162 provider 审计:176 个清单接口选择强 stub,其余真实接口选择弱实现;动态导出集合相对基线不变。 6. 负向边界验证:以 runtime 产品调用生成/弱 provider helper 时,CMake 按预期拒绝配置。 7. 最新 patchset 9ab9a92c6 本地验证:Python 生成器测试 7/7,runtime_utest_arch5162 编译链接及 106/106 用例通过。 8. 最新 patchset 主流水线 2fc8c29756bb40b6afef449e9a1d99a0 已完成,机器人结果 27/27 SUCCESS(含 UT_Test_rts_common)。 9. 最新 patchset 静态流水线 929c716805ba4eeca76f3948817b197b 已完成,机器人结果 11/11 SUCCESS。 ## 风险与重点 - 已迁移 arch5162 目标的对外真实 API ELF binding 从 GLOBAL 变为 WEAK,需重点关注 ABI 和符号抢占语义。 - 强 stub 必须覆盖不支持接口,且不得错误覆盖产品特殊强实现。 - noinline、function section 和链接 GC 必须同时生效,避免同文件调用绕过覆盖或 SO 体积膨胀。 - 本阶段只改变 arch5162;runtime、tiny 的 CMake、API 源文件和文档差异必须为空。 ## 核对清单 - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [ ] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签 - [x] 我已经详细阅读并遵守贡献指南 ## 其他信息 建议上库顺序: 1. 本 PR:只迁移 arch5162。 2. 后续 PR:只迁移 tiny 的端侧独立动态 libruntime.so;静态库、Windows 和其他产品形态保持原有源选择方式。 3. 最终清理:确认各产品和 UT 均无引用后删除两份手写 stub;runtime 保持原有全量强实现,不创建空 .def 或生成桩。 rtNpuGetFloatStatus 的 1,346 B 弱真实函数与 10 B 强 stub 仅是 section GC 的代表样本,该接口没有特殊迁移规则。 See merge request: cann/runtime!246 | 14 天前 | |
feat:清理DFX冗余头文件 Co-authored-by: yring_8<yangrui1@huawei.com> # message auto-generated for no-merge-commit merge: !2735 merge master into master feat:清理DFX冗余头文件 Created-by: yring_8 Commit-by: yring_8 Merged-by: cann-robot Description: # Pull Request ## 描述 统一 DFX 模块头文件的维护位置,删除 adump、msprof、trace 和 log 模块中的冗余副本。 主要变更: - 删除 adump、msprof、trace 目录下重复及无归属的头文件。 - 将兼容路径下的重复头文件改为软链接,保留原有引用方式。 - 将 trace 内部头文件迁移至 src/dfx/trace/inc/toolchain。 - 以 include/dfx/base/log_types.h、include/external/acl/acl_prof.h 等文件作为唯一实体。 - 调整 CMake include 路径及 adump_headers 等接口依赖。 - 调整打包配置,从实体文件位置复制头文件,确保安装包中的兼容目录仍包含普通实体文件。 - 更新 msprof、atrace、runtime 和 slog 单测的头文件依赖路径。 ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [x] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [x] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的Issue 无。 ## 如何测试 1. 执行全量构建: ```bash sh build.sh 2. 执行相关模块单元测试: bash tests/build_ut.sh --ut=adump -c bash tests/build_ut.sh --ut=msprof -c bash tests/build_ut.sh --ut=atrace -c 3. 检查打包 staging 目录,确认兼容路径中的头文件为实体文件,并与对应源文件内容一致。 ## 核对清单 <!-- [x] 表示选中 --> - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [ ] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如:feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 - 提交 ID:978532b3f84c506f4e39d613f1ee2ad750dbc0cf - 兼容目录仍保留原有头文件访问路径。 - 打包时从唯一实体文件位置复制,避免将无效软链接带入安装包。 See merge request: cann/runtime!2735 | 2 个月前 | |
fix: runtime 仓dfx组件代码未进行代码格式化不符合代码规范,需要整改 (#840) Co-authored-by: GuoWenbo<guowenbo13@h-partners.com> # message auto-generated for no-merge-commit merge: !4361 merge fix-issue-840 into master fix: runtime 仓dfx组件代码未进行代码格式化不符合代码规范,需要整改 (#840) Created-by: GuoWenbo Commit-by: GuoWenbo Merged-by: cann-robot Description: ## 描述 - 修复摘要: runtime 仓 dfx 组件代码未进行代码格式化,不符合代码规范,需要按仓内 pre-commit / clang-format 规范整改。 - 变更范围按 /mnt/workspace/.cann_fix/runtime_issue_840_20260819153258/cann-fix-plan.md 的候选修改点汇总,不在 PR 描述中逐文件展开: - src/dfx/log - src/dfx/trace - include/dfx/base/acl_log.h - include/dfx/base/alog_pub.h - include/dfx/base/log_types.h - pkg_inc/base/dlog_pub.h - pkg_inc/base/plog.h - pkg_inc/trace/atrace_pub.h - pkg_inc/trace/atrace_types.h - pkg_inc/watchdog/awatchdog.h - pkg_inc/watchdog/awatchdog_types.h - 文件级清单以计划产物 dfx-log-trace-expanded-files.txt 和 PR Files changed 为准,PR 描述不展开完整清单,避免描述过长。 - Diff 内容不逐文件展示,本次主体为格式化整改;检视反馈补充了文件末尾换行、宏表达式括号、atrace UT 中已有 utrace_arm_utest 目标的顶层依赖入口、stacktrace 覆盖率相关既有 UT 源文件的构建入口,以及线上覆盖率 UT 暴露的 ringbuffer 并发压测用例稳定性、AtraceStackcoreParse 包装层覆盖、atrace UT stub 依赖的 adcore 头文件 include 路径和 x86 ScdThreadsUtest 栈帧用例稳定性。 ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新功能 - [x] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的Issue https://gitcode.com/cann/runtime/issues/840 ## 如何测试 - 测试结论: 格式化检查和新增覆盖率 focused 验证 PASS;ScdUtilUtest.TestScdPtraceAttach 超时已修复,完整 utrace_utest 不再因该用例超过 300s;线上覆盖率包中暴露的 RraceRbLogUtest 并发压测波动、atrace_stackcore_api.c 0 覆盖、atrace UT adcore_api.h 头文件缺失编译问题,以及 x86 ScdThreadsUtest.TestScdFramesInit/TestScdFramesMemcpyFailed 依赖真实栈展开导致的波动已补充处理。 - pre-commit run --files tests/ut/atrace/ut/utrace/testcase/stacktrace_dumper/scd_threads_utest.cc: PASS - pre-commit run --files tests/ut/atrace/ut/utrace/CMakeLists.txt tests/ut/atrace/ut/trace_server/CMakeLists.txt: PASS - pre-commit run --files tests/ut/atrace/ut/utrace/testcase/trace_rb_log_utest.cc tests/ut/atrace/ut/utrace/testcase/stacktrace_dumper/scd_process_utest.cc: PASS - git diff --check: PASS - cmake --build build --target utrace_arm_utest -- -j8: PASS - cmake --build build --target trace_server_utest -- -j8: PASS - cmake --build build --target utrace_utest -j$(nproc): PASS - build/tests/ut/atrace/ut/utrace/utrace_utest --gtest_filter='RraceRbLogUtest.TestMsgNumLTBufferSize:RraceRbLogUtest.TestMsgNumEQBufferSize:RraceRbLogUtest.TestMsgNumGTBufferSize' --gtest_repeat=10 --gtest_break_on_failure: PASS - build/tests/ut/atrace/ut/utrace/utrace_utest --gtest_filter='ScdProcessUtest.TestAtraceStackcoreParse': PASS - build/tests/ut/atrace/ut/utrace/utrace_utest --gtest_filter=StacktraceDumperBinUtest.*: PASS, 8/8 passed - build/tests/ut/atrace/ut/utrace/utrace_utest --gtest_filter=ScdUtilUtest.*: PASS, 20/20 passed;TestScdPtraceAttach 约 21-32ms。 - bash tests/build_ut.sh --ut atrace --target utrace_utest --ut_timeout=300: PASS, 296/296 passed, 总耗时 23.855s。 - bash tests/build_ut.sh --ut atrace --target utrace_utest --ut_timeout=300: PASS;本机为 aarch64,x86-only ScdThreadsUtest 不编入本地目标;本次复验生成 UT XML: utrace_utest 296/296 passed, utrace_arm_utest 2/2 passed, trace_server_utest 73/73 passed。 - bash tests/build_ut.sh --ut atrace --target utrace_utest -c --ut_timeout=300: UT 阶段 PASS, 296/296 passed;本地生成 cov/coverage.info,重点文件覆盖率: atrace_stackcore_api.c 100.0%, stacktrace_dumper_bin.c 100.0%, stacktrace_parse.c 61.7%, trace_rb_log.c 90.6%。本地 genhtml 阶段因 /cmd_line 权限问题退出,不影响 UT 通过和 LCOV 数据生成。 - 变更范围核对: 变更文件均在计划范围或检视反馈补充范围内。 - cann-fix/test report 摘要: - 测试日志包含通过信号。 - 测试日志覆盖计划测试项 1 条。 - Problems: (none)。 ## 核对清单 <!-- [x] 表示选中 --> - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [ ] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如:feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 本次变更文件数量较多,PR 描述仅保留计划范围、测试结论和风险说明;完整文件级 diff 请以 PR Files changed 页面为准。 ## 风险和遗留问题 - 风险: 格式化文件数量较多,review 噪声较高。 - 控制: 仅按仓内格式化规则处理计划范围文件,不展开无关模块;通过 pre-commit clang-format 和 git diff --check 校验。 - 遗留问题: 本地 genhtml 阶段存在 /cmd_line 权限问题,已保留 coverage.info 和 UT XML 作为验证证据;线上环境可继续以平台生成的覆盖率 HTML 为准。 See merge request: cann/runtime!4361 | 15 天前 | |
【PR】: precommit pkg_inc and include Co-authored-by: duanpengliang<duanpengliang@huawei.com> # message auto-generated for no-merge-commit merge: !3730 merge master_clang_pkg_inc into master 【PR】: precommit pkg_inc and include Created-by: duanpengliang Commit-by: duanpengliang Merged-by: cann-robot Description: # Pull Request ## 描述 请清晰准确地描述本次 Pull Request 的意图和变更内容。 ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在当前页面的右侧'关联Issue'部分添加相应Issue链接,并勾选'合并后关闭已关联的 Issue'选项。 --> ## 如何测试 描述测试此变更的步骤和前提条件: 1. 2. ## 核对清单 <!-- [x] 表示选中 --> - [ ] 我的代码遵循了项目的代码风格 - [ ] 我已对代码进行了自测 - [ ] 我已更新了相关的文档 - [ ] 我在标题中使用了合适的类型标签(如: feat:, fix:) - [ ] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 在此添加任何其他关于本次 PR 的说明。 See merge request: cann/runtime!3730 | 1 个月前 | |
fix: runtime 仓dfx组件代码未进行代码格式化不符合代码规范,需要整改 (#840) Co-authored-by: GuoWenbo<guowenbo13@h-partners.com> # message auto-generated for no-merge-commit merge: !4361 merge fix-issue-840 into master fix: runtime 仓dfx组件代码未进行代码格式化不符合代码规范,需要整改 (#840) Created-by: GuoWenbo Commit-by: GuoWenbo Merged-by: cann-robot Description: ## 描述 - 修复摘要: runtime 仓 dfx 组件代码未进行代码格式化,不符合代码规范,需要按仓内 pre-commit / clang-format 规范整改。 - 变更范围按 /mnt/workspace/.cann_fix/runtime_issue_840_20260819153258/cann-fix-plan.md 的候选修改点汇总,不在 PR 描述中逐文件展开: - src/dfx/log - src/dfx/trace - include/dfx/base/acl_log.h - include/dfx/base/alog_pub.h - include/dfx/base/log_types.h - pkg_inc/base/dlog_pub.h - pkg_inc/base/plog.h - pkg_inc/trace/atrace_pub.h - pkg_inc/trace/atrace_types.h - pkg_inc/watchdog/awatchdog.h - pkg_inc/watchdog/awatchdog_types.h - 文件级清单以计划产物 dfx-log-trace-expanded-files.txt 和 PR Files changed 为准,PR 描述不展开完整清单,避免描述过长。 - Diff 内容不逐文件展示,本次主体为格式化整改;检视反馈补充了文件末尾换行、宏表达式括号、atrace UT 中已有 utrace_arm_utest 目标的顶层依赖入口、stacktrace 覆盖率相关既有 UT 源文件的构建入口,以及线上覆盖率 UT 暴露的 ringbuffer 并发压测用例稳定性、AtraceStackcoreParse 包装层覆盖、atrace UT stub 依赖的 adcore 头文件 include 路径和 x86 ScdThreadsUtest 栈帧用例稳定性。 ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新功能 - [x] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的Issue https://gitcode.com/cann/runtime/issues/840 ## 如何测试 - 测试结论: 格式化检查和新增覆盖率 focused 验证 PASS;ScdUtilUtest.TestScdPtraceAttach 超时已修复,完整 utrace_utest 不再因该用例超过 300s;线上覆盖率包中暴露的 RraceRbLogUtest 并发压测波动、atrace_stackcore_api.c 0 覆盖、atrace UT adcore_api.h 头文件缺失编译问题,以及 x86 ScdThreadsUtest.TestScdFramesInit/TestScdFramesMemcpyFailed 依赖真实栈展开导致的波动已补充处理。 - pre-commit run --files tests/ut/atrace/ut/utrace/testcase/stacktrace_dumper/scd_threads_utest.cc: PASS - pre-commit run --files tests/ut/atrace/ut/utrace/CMakeLists.txt tests/ut/atrace/ut/trace_server/CMakeLists.txt: PASS - pre-commit run --files tests/ut/atrace/ut/utrace/testcase/trace_rb_log_utest.cc tests/ut/atrace/ut/utrace/testcase/stacktrace_dumper/scd_process_utest.cc: PASS - git diff --check: PASS - cmake --build build --target utrace_arm_utest -- -j8: PASS - cmake --build build --target trace_server_utest -- -j8: PASS - cmake --build build --target utrace_utest -j$(nproc): PASS - build/tests/ut/atrace/ut/utrace/utrace_utest --gtest_filter='RraceRbLogUtest.TestMsgNumLTBufferSize:RraceRbLogUtest.TestMsgNumEQBufferSize:RraceRbLogUtest.TestMsgNumGTBufferSize' --gtest_repeat=10 --gtest_break_on_failure: PASS - build/tests/ut/atrace/ut/utrace/utrace_utest --gtest_filter='ScdProcessUtest.TestAtraceStackcoreParse': PASS - build/tests/ut/atrace/ut/utrace/utrace_utest --gtest_filter=StacktraceDumperBinUtest.*: PASS, 8/8 passed - build/tests/ut/atrace/ut/utrace/utrace_utest --gtest_filter=ScdUtilUtest.*: PASS, 20/20 passed;TestScdPtraceAttach 约 21-32ms。 - bash tests/build_ut.sh --ut atrace --target utrace_utest --ut_timeout=300: PASS, 296/296 passed, 总耗时 23.855s。 - bash tests/build_ut.sh --ut atrace --target utrace_utest --ut_timeout=300: PASS;本机为 aarch64,x86-only ScdThreadsUtest 不编入本地目标;本次复验生成 UT XML: utrace_utest 296/296 passed, utrace_arm_utest 2/2 passed, trace_server_utest 73/73 passed。 - bash tests/build_ut.sh --ut atrace --target utrace_utest -c --ut_timeout=300: UT 阶段 PASS, 296/296 passed;本地生成 cov/coverage.info,重点文件覆盖率: atrace_stackcore_api.c 100.0%, stacktrace_dumper_bin.c 100.0%, stacktrace_parse.c 61.7%, trace_rb_log.c 90.6%。本地 genhtml 阶段因 /cmd_line 权限问题退出,不影响 UT 通过和 LCOV 数据生成。 - 变更范围核对: 变更文件均在计划范围或检视反馈补充范围内。 - cann-fix/test report 摘要: - 测试日志包含通过信号。 - 测试日志覆盖计划测试项 1 条。 - Problems: (none)。 ## 核对清单 <!-- [x] 表示选中 --> - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [ ] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如:feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 本次变更文件数量较多,PR 描述仅保留计划范围、测试结论和风险说明;完整文件级 diff 请以 PR Files changed 页面为准。 ## 风险和遗留问题 - 风险: 格式化文件数量较多,review 噪声较高。 - 控制: 仅按仓内格式化规则处理计划范围文件,不展开无关模块;通过 pre-commit clang-format 和 git diff --check 校验。 - 遗留问题: 本地 genhtml 阶段存在 /cmd_line 权限问题,已保留 coverage.info 和 UT XML 作为验证证据;线上环境可继续以平台生成的覆盖率 HTML 为准。 See merge request: cann/runtime!4361 | 15 天前 | |
Initial commit | 8 个月前 |