| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
[feat]: call aclrtMemSetAccess after FabricMem host Map Co-authored-by: youyx<youxiao@huawei.com> # message auto-generated for no-merge-commit merge: !785 merge feat/fabric-mem-set-access into master [feat]: call aclrtMemSetAccess after FabricMem host Map Created-by: youyx Commit-by: youyx Merged-by: cann-robot Description: **提交 PR 前,请先阅读 [HIXL贡献指南](https://gitcode.com/cann/hixl/blob/master/CONTRIBUTING.md) ,查看 PR 提交方式并遵守相关提交规范。** ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 代码重构 - [ ] 文档更新 - [ ] 其他,请描述: ## 描述 FabricMem Host 内存在 aclrtMapMem 之后补充调用 aclrtMemSetAccess,为当前 Device 授予 READWRITE 权限,使 NPU/AIV 能访问 Host VMM 映射地址。 - 仅对 MEM_HOST 路径设置;Device 物理内存 Map 后本卡已具备访问权限 - SetAccess 失败时回滚 Unmap / Release VA / FreePhysical - 补充 UT stub 与失败回滚用例 ## 测试项 - [ ] bash tests/run_test.sh -t cpp -s fabric_mem - [x] 本地代码与 UT 桩更新完成(环境未跑全量 UT) ## Checklist <!-- [x] 表示选中 --> - [x] 该Pull Request的代码风格和项目的代码风格一致 - [x] 提交的代码已经过充分的验证 - [ ] 涉及的相关文档修改已更新 - [x] 标题中正确使用了类型标签(例如:feat/bugfix/refactor/docs/test等) ## 其它(可选) 目标分支为 cann/hixl master。 See merge request: cann/hixl!785 | 2 天前 | |
[bugfix]: 修复 TransferContext 清理竞争 Co-authored-by: zhaozhihui<zhaozhihui3@yeah.net> Co-authored-by: MingYang119<songmingyang@huawei.com> # message auto-generated for no-merge-commit merge: !689 merge bugfix/transfer-context-guard into master [bugfix]: 修复 TransferContext 清理竞争 Created-by: songmingyang Commit-by: MingYang119;zhaozhihui Merged-by: cann-robot Description: **提交 PR 前,请先阅读 [HIXL贡献指南](https://gitcode.com/cann/hixl/blob/master/CONTRIBUTING.md) ,查看 PR 提交方式并遵守相关提交规范。** ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 代码重构 - [ ] 文档更新 - [ ] 其他,请描述: ## 描述 <!--简要描述本次改动的背景,包括改动的原因、解决的问题等。--> 本次改动独立基于 upgrade/master,不依赖 feat/cs-transfer-resource-limit。 - 新增 kernel 侧 TransferContextManager,以独立文件维护 ThreadHandle 到 TransferContext 的映射;TransferContext 使用结构体保存普通锁和原子状态。 - 新增 SyncTransferContext kernel,TransferPool 在初始化、slot abort 重建、Finalize 时同步 add/destroy context;destroy 最多重试 30s,超时打印 event 日志后按强制清理继续释放资源。 - HixlBatchGet/Put 在 context 缺失、aborting、aborted 时直接返回失败,正常 context 下持普通锁执行原传输逻辑,避免 ThreadFree 与 kernel transfer 并发。 - TransferPool 统一管理 device function handles 和 aclrtBinHandle,确保 aclrtBinaryUnLoad 只在 pool 资源释放时执行一次。 - HixlCSClient 拆分 transfer pool 初始化并增加 rollback guard,后续 client 初始化失败时会释放 pool 引用;Destroy() 重复调用不会重复 Finalize()。 ## 测试项 <!--描述进行了哪些测试来验证本次改动,或新增了哪些测试用例。--> - git diff --cached --check - commit hook: trailing whitespace / eof / merge conflict / private key / clang-format / codespell / OAT - source ${ASCEND_HOME_PATH:-/home/zzh/Ascend/cann-9.1.0}/set_env.sh; bash tests/run_test.sh -s hixl - source ${ASCEND_HOME_PATH:-/home/zzh/Ascend/cann-9.1.0}/set_env.sh; build_test/tests/cpp/hixl/hixl_test --gtest_filter='TransferPoolTest.*:HixlCSClientDeviceFixture.*:LoadKernelFixture.*:HixlBatchTransferTest.*' - source ${ASCEND_HOME_PATH:-/home/zzh/Ascend/cann-9.1.0}/set_env.sh; timeout 60s build_test/tests/cpp/hixl/hixl_test --gtest_filter='HixlEngineUboeTest.InitializeWithUboeProtocol' ## 测试结果 <!--描述上述测试项的测试结果,可通过表格、图片等形式展示。--> - git diff --cached --check:通过。 - commit hook:通过;OAT hook 最终通过,过程中有 PlainReport_*.txt 不存在的日志噪声。 - bash tests/run_test.sh -s hixl:依赖下载和构建成功,输出 build success!;进入 hixl 并行测试后未产出最终 XML,日志停在 HixlEngineUboeTest.InitializeWithUboeProtocol,且当时没有残留 hixl_test 进程,因此中断。完整 hixl suite 结果未能确认。 - 定向 gtest:46 个用例全部通过。 - HixlEngineUboeTest.InitializeWithUboeProtocol 单测:60s timeout 包裹下单独执行通过。 ## Checklist <!-- [x] 表示选中 --> - [x] 该Pull Request的代码风格和项目的代码风格一致 - [x] 提交的代码已经过充分的验证 - [x] 涉及的相关文档修改已更新 - [x] 标题中正确使用了类型标签(例如:feat/bugfix/refactor/docs/test等) ## 其它(可选) <!--可以在这里描述任何和该Pull Request相关的说明。--> 无。 See merge request: cann/hixl!689 | 27 天前 |
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
| 2 天前 | ||
| 27 天前 |