| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
refactor: 更新 clang-format 配置并对全仓 463 个文件统一格式化 Co-authored-by: songkai111<songkai16@huawei.com> # message auto-generated for no-merge-commit merge: !527 merge master into master refactor: 更新 clang-format 配置并对全仓 463 个文件统一格式化 Created-by: songkai111 Commit-by: songkai111 Merged-by: cann-robot Description: ## 描述 更新 .clang-format 配置规则,并对全仓 463 个文件统一执行 clang-format 格式化,统一代码风格。 ### clang-format 配置变更(.clang-format) - AfterClass: true → false(类定义左大括号不换行) - AfterEnum: true → false(enum 左大括号不换行) - AlwaysBreakBeforeMultilineStrings: true → false - AllowShortFunctionsOnASingleLine: false → true(允许短函数体单行书写) - 统一 & / * 与操作数之间的空格规则(如 (m)&FP16_MAX_MAN → (m) & FP16_MAX_MAN) - 统一文件头注释分隔线样式(# ---- → # ====) ### 格式化覆盖范围 对全仓 463 个文件执行 clang-format,按目录与类型分布: | 目录 | 文件数 | |------|--------| | src/ | 186 | | tests/ | 141 | | pkg_inc/ | 64 | | include/ | 44 | | aicpu_common/ | 27 | | 文件类型 | 文件数 | |----------|--------| | .cpp | 224 | | .h | 198 | | .cc | 25 | | .json | 14 | | .py | 1 | 变更统计:+31,466 -33,771 行(纯格式调整,无逻辑变更) ## 关联的Issue - #221 ## 测试 全量编译及单元测试通过,格式化仅为风格调整,不影响功能逻辑。 ## 文档更新 无 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:代码风格统一 See merge request: cann/opbase!527 | 2 个月前 | |
添加PCIE Through需求相关内部接口 Co-authored-by: ren-botao<renbotao@h-partners.com> # message auto-generated for no-merge-commit merge: !727 merge pcie_through into master 添加PCIE Through需求相关内部接口 Created-by: ren-botao Commit-by: ren-botao Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 此 PR 为算子执行框架新增 PCIE Through 功能相关的内部接口,主要目的是在检测到 tensor 地址位于 PCIE 地址范围时,跳过算子执行缓存(OpExecCache)的查找与写入,避免因 PCIE 通道数据变化导致缓存命中过期结果。变更涉及在 OpConfigInfo 中新增 usePcieAddr 标记字段、新增 op_feature_internal 模块提供 PCIE 地址检测能力,以及在算子缓存流程的关键路径上增加 PCIE 地址判断与缓存短路逻辑。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> [#312 nnopbase支持PCIe through](https://gitcode.com/cann/opbase/issues/312) ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> 冒烟看护 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/opbase!727 | 25 天前 | |
feat(fallback 2stages) Co-authored-by: esok11<yangsifa@huawei.com> # message auto-generated for no-merge-commit merge: !740 merge f081401 into master feat(fallback 2stages) Created-by: esok11 Commit-by: esok11 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 本 PR 为 op fallback 执行路径新增两阶段(2-stage)执行机制,将原有的单阶段 EXEC_OPAPI_CMD(Prepare + Launch 同步串行)拆分为独立的 Prepare 阶段与 Launch 阶段,使执行图能够在 Prepare 阶段完成算子执行器与 workspace 资源的准备,并在后续合适时机再触发 Launch,为调度优化提供基础。 ### 改动内容 **include/op_common/op_graph/op_fallback.h** - 新增宏 CANN_OPS_OPB_ASYN_EXEC_ACLNN:仅完成 Prepare 阶段工作——获取 ResetCacheThreadLocal、{aclnn_api}GetWorkspaceSize、{aclnn_api} 三个函数地址;创建 OpApiParams 对象封装 executor、op_api_func 与转换后的参数列表;将 OpApiParams 通过 SetOpApiParamsWithDefaultDeleter 托管给 host_api_ctx 管理生命周期;调用 GetWorkspaceSize 获取 workspace 大小并通过 SetWorkspaceSizes 设置到上下文,供后续 Launch 阶段使用。 **include/op_common/op_graph/op_fallback_internal.h** - 新增 aclIntArray、aclFloatArray、aclBoolArray 的创建与销毁函数指针类型别名(_aclCreateIntArray/_aclDestroyIntArray 等),补齐原有仅覆盖 aclTensor/aclScalar/aclTensorList 的类型支持。 - 新增两阶段执行所需的内部类型与接口: - OpApiAnyValue(带析构器的通用参数容器)与 OpApiAnyValueDeleter - OpApiFunc2Stage(两阶段 Launch 函数指针类型) - OpApiParams(封装 converted_params、executor、op_api_func,作为 Prepare 阶段产出传递给 Launch 阶段) - 新增 Collect 重载集与 CollectConvertedTypes 模板:为 aclTensor/aclScalar/aclIntArray/aclBoolArray/aclTensorList 等类型分别绑定对应的析构器并收集到 OpApiParams.converted_params,确保两阶段分离后参数资源在 Launch 完成后仍能正确释放。 - 新增 op_execute_prepare_context.h、op_execute_launch_context.h 头文件依赖。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> - #299 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> 本 PR 未包含文档更新。 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/opbase!740 | 21 天前 |