文件最后提交记录最后更新时间
refactor: 替换rt内存接口为aclrt接口 Co-authored-by: tangqunzhang<tangqunzhang@huawei.com> # message auto-generated for no-merge-commit merge: !2169 merge develop into develop refactor: 替换rt内存接口为aclrt接口 Created-by: tangqunzhang Commit-by: tangqunzhang Merged-by: cann-robot Description: # Pull Request ## 描述 将 GE 项目中的 rt 内存分配接口替换为新的 aclrt 接口,同时保留 moduleId 特性传递。 ### 主要变更 #### 1. 新增辅助模块 - 新增 base/common/aclrt_malloc_helper.h 封装辅助函数声明 - 头文件不依赖 runtime/rt.h,使用 using rtMemType_t = uint32_t; 自行定义类型别名 - 新增 base/common/aclrt_malloc_helper.cc 实现所有辅助函数 - ge::AclrtMalloc() - 替代 rtMalloc,表驱动分发,自动传递 moduleId - ge::AclrtMallocHost() - 替代 rtMallocHost,自动传递 moduleId - ge::AclrtMallocForTaskScheduler() - 替代 rtMallocForTaskScheduler - ge::AclrtMallocHostSharedMemory() - 替代 rtMallocHostSharedMemory,基于 POSIX shm_open/mmap/aclrtHostRegister - ge::AclrtFreeHostSharedMemory() - 替代 rtFreeHostSharedMemory - ge::AdviseAndTouchHugePages() - 大页内存预触及物理分配 - 删除 runtime/v1/common/aclrt_malloc_helper.h(旧款 inline 版本,被新模块替代) - 删除 rtMemAdvise的调用 #### 2. 内存类型映射表 | rtMemType_t | aclrtMemMallocPolicy | |-------------|----------------------| | RT_MEMORY_TS | ACL_MEM_MALLOC_HUGE_FIRST | | RT_MEMORY_HOST | ACL_MEM_TYPE_HIGH_BAND_WIDTH (走 HandleHost) | | RT_MEMORY_HBM / DEFAULT / RDMA_HBM / SPM | ACL_MEM_TYPE_HIGH_BAND_WIDTH | | RT_MEMORY_P2P_HBM | ACL_MEM_MALLOC_HUGE_FIRST_P2P | | RT_MEMORY_DDR / DDR_NC | ACL_MEM_TYPE_LOW_BAND_WIDTH | | RT_MEMORY_P2P_DDR | ACL_MEM_MALLOC_HUGE_FIRST_P2P | ### 技术细节 #### moduleId 保留 ```cpp // 旧接口 rtMalloc(&ptr, size, RT_MEMORY_HBM, GE_MODULE_NAME_U16); // 新接口 ge::AclrtMalloc(&ptr, size, RT_MEMORY_HBM, GE_MODULE_NAME_U16); ``` #### Host Shared Memory ```cpp // 旧接口 rtMallocHostSharedMemory(name, size, &fd, &host_ptr, &dev_ptr); // 新接口 ge::AclrtMallocHostSharedMemory(name, size, &fd, &host_ptr, &dev_ptr); ``` ## 变更类型 - [x] ♻️ 重构(既不修复错误也不增加功能的代码变动) ## 如何测试 1. 编译 GE 项目:bash build.sh 2. 运行单元测试验证内存分配功能正常 ## 核对清单 - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我在标题中使用了合适的类型标签 - [x] 编译 ge_common_base 目标通过 See merge request: cann/ge!216925 天前
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.hruntime_api_wrapper.h 移除 runtime/rt_ffts_plus.hruntime/rt_stars.hruntime/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!31764 天前
【PR】: 对外重复头文件修改对内部分新增文件,待legacy仓修改后再删除 Co-authored-by: SeasonChu<zhuxincheng2@huawei.com> # message auto-generated for no-merge-commit merge: !3198 merge fixIncPart2 into develop 【PR】: 对外重复头文件修改对内部分新增文件,待legacy仓修改后再删除 Created-by: SeasonChu Commit-by: SeasonChu Merged-by: cann-robot Description: # Pull Request ## 描述 文件名相同,内容不同,一个对外,一个内部,内部的头文件整改文件名 问题原因: 历史遗留问题 问题影响: 外部开发者易用性体验,不易理解 解决方案: 内部头文件整改文件名,保留原文件,待leagcy仓修改后再删除 ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [x] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在当前页面的右侧'关联Issue'部分添加相应Issue链接,并勾选'合并后关闭已关联的 Issue'选项。 --> ## 如何测试 描述测试此变更的步骤和前提条件: 1. 2. ## 核对清单 <!-- [x] 表示选中 --> - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如:feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 在此添加任何其他关于本次 PR 的说明。 See merge request: cann/ge!31985 天前
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.hruntime_api_wrapper.h 移除 runtime/rt_ffts_plus.hruntime/rt_stars.hruntime/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!31764 天前
【feat】: rt接口切换为aclrt系列接口4--stream类接口 无withConfig接口 Co-authored-by: maohaodi<maohaodi@huawei.com> # message auto-generated for no-merge-commit merge: !1376 merge aclrt_api_stream_without_flag into develop 【feat】: rt接口切换为aclrt系列接口4--stream类接口 无withConfig接口 Created-by: maohaodi Commit-by: maohaodi Merged-by: cann-robot Description: # Pull Request ## 描述 rt接口切换为aclrt系列接口。stream类接口,切换的接口列表如下: rtStreamCreate -> aclrtCreateStream rtStreamDestroyForce -> aclrtDestroyStreamForce rtStreamDestroy -> aclrtDestroyStream rtGetAvailStreamNum -> aclrtGetStreamAvailableNum rtsStreamGetId -> aclrtStreamGetId rtStreamSynchronize -> aclrtSynchronizeStream rtStreamActive -> aclrtActiveStream rtStreamTaskClean -> aclrtPersistentTaskClean ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [x] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在当前页面的右侧'关联Issue'部分添加相应Issue链接,并勾选'合并后关闭已关联的 Issue'选项。 --> ## 如何测试 描述测试此变更的步骤和前提条件: 1. 2. ## 核对清单 <!-- [x] 表示选中 --> - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如:feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 在此添加任何其他关于本次 PR 的说明。 See merge request: cann/ge!13762 个月前
【feat】: rt接口切换为aclrt系列接口4--stream类接口 无withConfig接口 Co-authored-by: maohaodi<maohaodi@huawei.com> # message auto-generated for no-merge-commit merge: !1376 merge aclrt_api_stream_without_flag into develop 【feat】: rt接口切换为aclrt系列接口4--stream类接口 无withConfig接口 Created-by: maohaodi Commit-by: maohaodi Merged-by: cann-robot Description: # Pull Request ## 描述 rt接口切换为aclrt系列接口。stream类接口,切换的接口列表如下: rtStreamCreate -> aclrtCreateStream rtStreamDestroyForce -> aclrtDestroyStreamForce rtStreamDestroy -> aclrtDestroyStream rtGetAvailStreamNum -> aclrtGetStreamAvailableNum rtsStreamGetId -> aclrtStreamGetId rtStreamSynchronize -> aclrtSynchronizeStream rtStreamActive -> aclrtActiveStream rtStreamTaskClean -> aclrtPersistentTaskClean ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [x] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在当前页面的右侧'关联Issue'部分添加相应Issue链接,并勾选'合并后关闭已关联的 Issue'选项。 --> ## 如何测试 描述测试此变更的步骤和前提条件: 1. 2. ## 核对清单 <!-- [x] 表示选中 --> - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如:feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 在此添加任何其他关于本次 PR 的说明。 See merge request: cann/ge!13762 个月前