| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
fix: 修复dflow日志文案语法错误、级别措辞及度量单位缺失问题 Co-authored-by: lining23666<lining.li@huawei.com> # message auto-generated for no-merge-commit merge: !4972 merge fix/dflow-log-text into develop fix: 修复dflow日志文案语法错误、级别措辞及度量单位缺失问题 Created-by: lining23666 Commit-by: lining23666 Merged-by: cann-robot Description: # Pull Request ## 描述 修复日志扫描发现的 dflow 模块 7 处日志/文案问题: | # | 文件 | 修复内容 | |---|------|---------| | 1 | dflow/deployer/daemon/daemon_service.cc | 错误响应消息语法修正:Not exist client id → Client id does not exist | | 2 | dflow/pydflow/python/dataflow/plugin/torch/torch_plugin.py | 删除 _dynamo_export 循环内调试 print 残留 | | 3 | dflow/runner/compiler/model/flow_model_cache.cc | GELOGI 文案措辞调整:Failed to match cache → Cache not matched(缓存 miss 属正常场景,保留 INFO 级避免告警噪音) | | 4 | dflow/llm_datadist/v1/common/llm_flow_service.cc | Feed timeout 日志补充 us 单位(与 link_manager.cc 同款文案对齐) | | 5 | dflow/deployer/deploy/deployer/deploy_context.cc | timeout=%d 补充 ms 单位 | | 6 | dflow/deployer/executor/dynamic_model_executor.cc | timeout=%d 补充 ms 单位 | | 7 | dflow/deployer/executor/cpu_sched_model_builder.cc | timeout:%d 补充 ms 单位 | 均为纯文案修改,不涉及逻辑变更。 ## 变更类型 - [x] 🐛 Bug 修复 - [ ] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的Issue ## 如何测试 1. 本地 pre-commit 检查(codespell、clang-format、ruff、end-of-file-fixer 等)全部 Passed 2. python3 -m py_compile 校验修改后的 Python 文件通过 3. 纯日志文案修改,无逻辑变更,无需功能测试 ## 核对清单 - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如:feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 日志扫描报告来源:scan-log report_0915 ge-dflow_findings.jsonl(7 条发现全部核实为真实问题后修复)。 See merge request: cann/ge!4972 | 17 天前 | |
fix: improve log usability-0911 Co-authored-by: lining23666<lining.li@huawei.com> # message auto-generated for no-merge-commit merge: !4900 merge fix/log-usability-0911 into develop fix: improve log usability-0911 Created-by: lining23666 Commit-by: lining23666 Merged-by: cann-robot Description: # Pull Request ## 描述 本次提交基于 CANN 日志易用性评测报告(cann-log-evaluation-report-dflow.xlsx,2026-09-09 生成),对 GE 仓库中剩余未整改的 dflow 相关日志文案问题进行修复,不涉及业务逻辑、控制流或算法变更。 报告共 55 条问题,其中 4 条( scheding×3、dtypes×1)已在 c1da3dfba(improve log usability-0907)中修复,7 条位于 api/python/llm_datadist_v1(该模块计划日落,不做修改),本次整改剩余 44 条,涉及 dflow/ 下共 28 个文件: ### 1. 一般 - 字符串拼接缺空格(1 处) - dflow/udf/flow_func/mbuf_flow_msg.cpp:相邻字符串字面量拼接处补空格,消除运行时 %zuis 粘连输出 ### 2. 一般 - 语法错误(43 处) | 修正前 | 修正后 | |--------|--------| | is not support | is not supported | | params is null/invalid | params are null/invalid | | not exist / not find / not match | does not exist / is not found / does not match | | is not allowed raising exception result of inputs is empty | is not allowed to raise exception as inputs are empty | ### 3. 附带清理无用代码(零行为变化) - 删除无用的 py_meta_params.get_work_path() 调用(pyflow.py,纯 getter 且返回值未使用) - 删除逐字重复的 __call__ 定义(pyflow.py) 注:ruff-format hook 对存量格式不合规的 pyflow.py 做了全文件格式重排,为 hook 强制行为。 ## 变更类型 请选择本次引入的变更类型: - [ ] 🐛 Bug 修复 - [ ] ✨ 新功能 - [x] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的Issue 无。 ## 如何测试 1. grep 验证报告中全部错误模式在 dflow/ 下无残留 2. 25 个 C++ 改动文件使用 build_ut 编译数据库执行 -fsyntax-only 全部通过 3. 3 个 Python 改动文件 py_compile 语法检查通过 4. pre-commit 全部 hooks 通过(clang-format / ruff check / ruff format / codespell / OAT 等) ## 核对清单 - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如:fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 报告中 api/python/llm_datadist_v1 下的 7 条问题(含 3 条严重级拼写错误)因模块日落不做修改。 See merge request: cann/ge!4900 | 21 天前 | |
fix: 修复dflow非0卡部署context校验失败并保证API层context透明 Co-authored-by: lining23666<lining.li@huawei.com> # message auto-generated for no-merge-commit merge: !4697 merge fix/dflow-context-transparent into develop fix: 修复dflow非0卡部署context校验失败并保证API层context透明 Created-by: lining23666 Commit-by: lining23666 Merged-by: cann-robot Description: # Pull Request ## 描述 修复 dflow 部署模型到非 0 卡时加载失败的问题,并保证 dflow API 对调用线程 runtime context 的透明性。包含两个配套修改: **1. SubmitEventSync 入口绑卡(dflow/deployer/common/data_flow/event/proxy_event_manager.cc)** 根因:runtime context 是线程私有的, ProxyEventManager::SubmitEventSync 会在部署线程池工作线程(ge_dpl_ldlm 加载子模型线程等)中调用 rtEschedSubmitEventSync,而该线程从未执行过 aclrtSetDevice,报 EE1018: No valid context is bound to the current thread。部署 0 卡时命中 runtime 默认 context 侥幸通过,非 0 卡(如 numa_config 仅配置 2/3/4/5 卡)必现。 修复:SubmitEventSync 入口统一 aclrtSetDevice(device_id),单点覆盖全部 6 类远程内存组事件(CreateGroup/AddGroup/AllocCache/AllocMbuf/FreeMbuf/CopyQMbuf),与库内 DestroyQueue、UnloadSubmodels 既有做法一致。该路径仅在部署期和变量同步期调用,不在推理热路径。 **2. dflow API 入口 context save/restore(dflow/runner/session/dflow_api.cc)** 背景:内部路径(如 feed 的 io_helper)会在 API 调用线程上 SetDevice 并残留切换,污染调用方(如 torch_npu 用户主线程)的 context。 修复:API 层新增 RtCtxGuard(RAII),入口记录调用线程 context,出口恢复,使内部设备/context 切换对调用方透明: - 无 context 或未变化时零动作(避免恢复已销毁 context 失败的场景,如 Finalize 内部 aclrtResetDevice 后) - 构造/析构均容忍失败,restore 失败仅打警告 - 覆盖全部 16 个 API 入口 两个修改配合形成完整方案:内部各依赖 context 的调用点用前自行绑卡(可自由切换),API 层对调用方上下文透明。 ## 变更类型 - [x] 🐛 Bug 修复 - [ ] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的Issue ## 如何测试 1. 复现:numa_config.json 的 item_list 仅配置 2、3、4、5 卡,运行 examples/dflow/python/sample_npu_model.py,部署到物理 2 卡时报 EE1018 context null,模型加载失败 2. 修复后验证:同配置重跑上述样例,模型加载成功、feed/fetch 正常 3. context 透明性验证:feed 前后检查调用线程的当前 context/device 不变(torch_npu 混用场景) 4. 回归:本地增量编译 dflow(model_deployer、dflow_runner 目标)通过;pre-commit 全部通过 ## 核对清单 - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如:feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 本 PR 为草稿状态,真机验证进行中,完成后转正式。 See merge request: cann/ge!4697 | 29 天前 | |
refactor: dflow session/compiler/executor 目录结构调整到 runner 平级目录 Co-authored-by: lining23666<lining.li@huawei.com> # message auto-generated for no-merge-commit merge: !4263 merge dflow into develop refactor: dflow session/compiler/executor 目录结构调整到 runner 平级目录 Created-by: lining23666 Commit-by: lining23666 Merged-by: cann-robot Description: ## 描述 将 dflow 的 session、compiler、executor 三个目录统一移入 dflow/runner/ 下,使 session 与 compiler、executor 处于平行层级。编译产物 libdflow_runner.so 输出到 dflow/runner/ 目录,目录结构与编译结果对应。 **调整前**: dflow/ ├── compiler/ ← 编译层(含 session 子目录) │ ├── CMakeLists.txt ← dflow_runner 编译定义 │ ├── data_flow_graph/ │ ├── model/ │ ├── pne/ │ └── session/ ← session 原在此 ├── executor/ ← 执行层 ├── deployer/ ├── ... **调整后**: dflow/ ├── runner/ ← 新建,dflow_runner 编译入口 │ ├── CMakeLists.txt ← dflow_runner 编译定义 │ ├── compiler/ ← 编译层 │ ├── executor/ ← 执行层 │ └── session/ ← session 层(与 compiler/executor 平级) ├── deployer/ ├── ... ## 变更类型 - [x] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [x] 📦 构建过程或辅助工具的变动 ## 关联的Issue ## 如何测试 1. 增量编译 dflow_runner 目标,确认 libdflow_runner.so 输出到 dflow/runner/ 目录 2. 确认所有 #include 路径正确解析 3. 确认 pre-commit 检查全部通过 ## 核对清单 - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如:feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 - 涉及 112 个文件变更(目录 rename + include 路径更新) - 编译验证通过:libdflow_runner.so 正确输出到 cmake-build-gcov/dflow/runner/libdflow_runner.so - 文档同步更新:docs/zh/design/modules/dflow/dflow.md、docs/en/design/modules/dflow/dflow.md、blacklist.txt See merge request: cann/ge!4263 | 1 个月前 |