| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
【PR】: 优化docs/zh/api_ref中md文件中的标签以及向docs中上传中英文错误码参考 Co-authored-by: ycm0028<yechengmei@huawei.com> # message auto-generated for no-merge-commit merge: !4352 merge master into master 【PR】: 优化docs/zh/api_ref中md文件中的标签以及向docs中上传中英文错误码参考 Created-by: ycm0028 Commit-by: ycm0028 Merged-by: cann-robot Description: # Pull Request ## 描述 优化docs/zh/api_ref中md文件中的标签以及向docs中上传中英文错误码参考 ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [x] 📝 文档内容更新 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在当前页面的右侧'关联Issue'部分添加相应Issue链接,并勾选'合并后关闭已关联的 Issue'选项。 --> ## 如何测试 手动检查更新的md文件 ## 核对清单 <!-- [x] 表示选中 --> - [ ] 我的代码遵循了项目的代码风格 - [ ] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [ ] 我在标题中使用了合适的类型标签(如: feat:, fix:) - [ ] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 在此添加任何其他关于本次 PR 的说明。 See merge request: cann/runtime!4352 | 20 天前 | |
feat: 新增aclrtBinaryEnumerateFunctions接口 Co-authored-by: chenyang<2082464740@qq.com> # message auto-generated for no-merge-commit merge: !4534 merge aclbef into master feat: 新增aclrtBinaryEnumerateFunctions接口 Created-by: weixin_51634168 Commit-by: chenyang Merged-by: cann-robot Description: # feat: 新增aclrtBinaryEnumerateFunctions接口 ## 描述 新增“枚举二进制模块中核函数句柄”能力,包含 RT 内部接口 rtBinaryEnumerateFunctions 及 ACL 对外封装 aclrtBinaryEnumerateFunctions。行为对齐 CUDA cuModuleEnumerateFunctions:按 Program::kernelNameMap_ 存储顺序返回句柄,实际填入个数为 min(numFunctions, 模块内函数数);numFunctions 为 0 时不写入任何句柄,接口直接返回成功。 **RT 层:** - 接口声明位于 src/inc/runtime/inner_kernel.h(非仓间接口);C 层入口 src/runtime/api/api_c_standard_soc.cc 负责句柄解包,经 InitEmbeddedInnerHandle/ExportEmbeddedHandle 导出 rtFuncHandle;api_c_tiny_stub.cc 打桩返回不支持 - Api 分层链路逐层转发:api_error.cc 做空指针校验(binHandle/funcHandles/actualCount),api_decorator.cc 透传;本接口不做 profiling 打点 - ApiImpl::BinaryEnumerateFunctions 按职责拆分为两个私有接口: - PrepareProgramForEnumerate:非 XPU 平台经 Program::CopySoAndNameToCurrentDevice 将二进制及名称按设备惰性拷贝下发(每设备仅一次);XPU 平台不拷贝,仅取 device id - CollectEnumerateKernels:遍历 kernelNameMap_ 收集句柄,按 min(numFunctions, 实际函数数) 预留并截断;XPU 下逐 kernel 设置 literal name 设备地址 **ACL 层:** - 新增对外接口 aclError aclrtBinaryEnumerateFunctions(const aclrtBinHandle binHandle, aclrtFuncHandle* funcHandles, uint32_t numFunctions)(include/external/acl/acl_rt.h),经 ACL_RT_FUNC_MAP 宏机制生成公开符号;aclrtBinaryEnumerateFunctionsImpl 空指针校验后透传 RT 层,底层错误码(含平台不支持)直接回传 **文档与示例:** - 补充 docs/zh/api_ref/14_kerne_loading_and_execution.md 接口文档(含 min 语义及 numFunctions=0 行为说明) - 新增上机示例 example/2_advanced_features/kernel/2_binary_enumerate_functions/:将 add_custom/sub_custom/mul_custom 三个 AscendC Kernel(kernel/custom.cpp)编译为同一个独立算子二进制,演示完整使用链路——aclrtBinaryLoadFromFile Host 侧加载解析;首次调用 aclrtBinaryEnumerateFunctions 触发二进制到当前 Context 对应 Device 的拷贝,并枚举出 3 个核函数句柄;再用 aclrtGetFunctionName/aclrtGetFunctionAddr 查询函数名与 Device 代码地址、aclrtBinaryGetDevAddress 打印二进制 Device 地址;最后通过 aclrtLaunchKernelWithHostArgs 分别下发三个 Kernel 并校验 FP16 计算结果。配套 CMakeLists.txt、run.sh 一键编译运行脚本及中英文 README。 **example测试结果:** text [INFO] Enumerating functions and copying the binary from Host to Device [INFO] Binary copied to Device: address=0x124000001000, size=7828 bytes [INFO] function[0]: name=add_custom, handle=0xaaab14b41798, aic=(nil), aiv=0x124000001000 [INFO] function[1]: name=mul_custom, handle=0xaaab14b41cc8, aic=(nil), aiv=0x124000001a30 [INFO] function[2]: name=sub_custom, handle=0xaaab14b421f8, aic=(nil), aiv=0x124000002460 [INFO] add_custom result verified [INFO] sub_custom result verified [INFO] mul_custom result verified [SUCCESS] aclrtBinaryEnumerateFunctions sample passed ## 变更类型 - [x] ✨ 新功能 ## 关联的Issue ## 如何测试 1. bash build.sh 编译通过 2. 新增 UT 全量通过:tests/ut/runtime/runtime/test/platform/910B/rt_utest_api_kernel.cc 中 BinaryEnumerateFunctions 相关用例(成功、空 binHandle、参数校验、numFunctions 小于/大于实际个数、空 program、拷贝下发失败、decorator 转发、numFunctions=0),tests/ut/acl/testcase/acl_runtime_unittest.cpp 中 ACL 层用例;tests/depends 打桩已同步 3. 示例 example/2_advanced_features/kernel/2_binary_enumerate_functions/main.cpp 上机验证枚举与 kernel launch ## 核对清单 - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如:feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 无 See merge request: cann/runtime!4534 | 12 天前 | |
【PR】: 简要描述Docs下增加zh目录,更新api_ref目录下的md文件 Co-authored-by: ycm0028<yechengmei@huawei.com> # message auto-generated for no-merge-commit merge: !3548 merge master into master 【PR】: 简要描述Docs下增加zh目录,更新api_ref目录下的md文件 Created-by: ycm0028 Commit-by: ycm0028 Merged-by: cann-robot Description: # Pull Request ## 描述 1、在Docs下增加zh目录,将现有目录移入zh中,同时,调整目录名称,去掉目录中的编号。 2、更新api_ref目录下的md文件,在产品支持情况以及约束说明中增加过滤标签,便于按指定范围过滤md内容。 ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [x] 📝 文档内容更新 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在当前页面的右侧'关联Issue'部分添加相应Issue链接,并勾选'合并后关闭已关联的 Issue'选项。 --> ## 如何测试 描述测试此变更的步骤和前提条件: 1.检查各md的内容显示是否正确。 2.检查目录之间的跳转是否正确。 ## 核对清单 <!-- [x] 表示选中 --> - [ ] 我的代码遵循了项目的代码风格 - [ ] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [ ] 我在标题中使用了合适的类型标签(如: feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 在此添加任何其他关于本次 PR 的说明。 See merge request: cann/runtime!3548 | 1 个月前 |
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
| 20 天前 | ||
| 12 天前 | ||
| 1 个月前 |