| refactor: runtime/v1 消除非开放runtime头文件依赖,替换为开放头文件+ge_rts_decl.h
Co-authored-by: tangqunzhang<tangqunzhang@huawei.com>
# message auto-generated for no-merge-commit merge:
!3176 merge develop into develop
refactor: runtime/v1 消除非开放runtime头文件依赖,替换为开放头文件+ge_rts_decl.h
Created-by: tangqunzhang
Commit-by: tangqunzhang
Merged-by: cann-robot
Description: # Pull Request
## 描述
消除 runtime/v1/ 中对非开放 runtime/*.h 头文件的依赖,替换为开放头文件(rt_external*.h)+ ge_rts_decl.h(自行声明)。主要变更:
1. **新增 base/common/ge_rts_decl.h**:自行声明不在开放头文件中的 rt 类型(rtDevBinary_t、rtFunctionInfo_t、rtKernelDetailInfo_t、rtMemRequestFeature_t)和函数(rtKernelLaunchWithHandleV2、rtKernelLaunchWithFlagV2、rtKernelLaunchEx、rtKernelLaunchFwk、rtAicpuKernelLaunchWithFlag、rtDevBinaryRegister、rtDevBinaryUnRegister、rtRegisterAllKernel、rtMetadataRegister、rtFunctionRegister、rtGetFunctionByName、rtKernelGetAddrAndPrefCntV2、rtGetTsMemType),受 #ifndef CCE_RUNTIME_KERNEL_H 和 #ifndef CCE_RUNTIME_DEVICE_H guard 保护避免重复定义
2. **非开放头文件替换**:9个 .h 文件移除 runtime/rt.h 替换为开放头文件或 ge_rts_decl.h;runtime_api_wrapper.h 移除 runtime/rt_ffts_plus.h、runtime/rt_stars.h、runtime/mem.h
3. **非开放 rt 函数替换为 aclrt 等价接口**:
- rtStreamSynchronizeWithTimeout → aclrtSynchronizeStreamWithTimeout(5处)
- rtStreamWaitEvent → aclrtStreamWaitEvent
- rtStreamWaitEventWithTimeout → aclrtStreamWaitEventWithTimeout
- rtMemset → aclrtMemset
- rtMemcpyAsync → aclrtMemcpyAsync(7处)
- RT_MEMCPY_* → ACL_MEMCPY_* 枚举
- RT_MEMCPY_HOST_TO_DEVICE_EX → ACL_MEMCPY_HOST_TO_BUF_TO_DEVICE
- rtCtxGetCurrent → aclrtGetCurrentContext
- rtContext_t → aclrtContext
- rts_node_executor.h: tagRtMemcpyKind → aclrtMemcpyKind
## 变更类型
- [x] ♻️ 重构(既不修复错误也不增加功能的代码变动)
## 如何测试
1. 编译 runtime/v1 相关模块,确认无编译错误
2. 运行 kernel_handle_unittest、kernel_task_info_unittest 等 UT
3. 确认无开放/非开放头文件 struct tag 重复定义冲突
## 核对清单
- [x] 我的代码遵循了项目的代码风格
- [x] 我已对代码进行了自测
- [x] 我在标题中使用了合适的类型标签(如:refactor:)
See merge request: cann/ge!3176 | 4 天前 |