文件最后提交记录最后更新时间
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!216926 天前
Initial commit 5 个月前