CANN/

hcomm

公开

HCOMM(Huawei Communication)是HCCL的通信基础库,提供通信域以及通信资源的管理能力。

496
代码Commits分支Pull Requests213讨论
提交ee911c08
Pp_ch创作于 11 天前·Ccann-robot提交于 11 天前
1 Parent(s):0005525b
reset poll_cq timeout on partial CQE progress in ChannelFence to avoid false timeout on large transfers
Co-authored-by: p_ch<pengchenghao1@huawei.com>



# message auto-generated for no-merge-commit merge:
!1659 merge poll_cq_reset_timer into master

reset poll_cq timeout on partial CQE progress in ChannelFence to avoid false timeout on large transfers

Created-by: p_ch
Commit-by: p_ch
Merged-by: cann-robot
Description: ## 描述

为HostCpuRoceChannel::ChannelFence()修复了大数据、多 WQE 传输场景下的超时误报问题,主要变更:

host_cpu_roce_channel.cc: 在部分 CQE 完成时重置超时起始时间,而非固定在调用 ChannelFence 之时,并在超时日志中增加剩余wqeNum信息。

## 关联的Issue
<!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。-->
<!-- 如果这个PR不涉及Issue,可填写"NA"。-->

## 测试
单边通信 d2d / d2h / h2d / h2h 通过 write 发送 16GB 数据验证成功。

新增了 3 个UT测试用例

| 测试用例 | 覆盖的新分支 |
| --- | --- |
| Ut_ChannelFence_When_PartialCompletion_Expect_HCCL_SUCCESS | ChannelFence 中部分完成时重置超时计时器|
| Ut_ChannelFence_When_PollExcessCqe_Expect_HCCL_E_INTERNAL | poll 返回完成数 > 预期 wqeNum_|
| Ut_ChannelFence_When_Timeout_Expect_HCCL_E_TIMEOUT | 等待 CQE 超时|

另外在 fixture 后新增了 SetupOneValidQpInfoMock() 辅助函数,用于模拟有效的 QP 信息(CQ、QP、context),使 ChannelFence 能进入 while 循环进行 polling。

## 文档更新
<!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。-->

## 类型标签
<!--  [x] 表示选中 -->
- [x] Bug修复
- [ ] 新特性
- [ ] 性能优化
- [ ] 文档更新
- [ ] 其他,请描述:




See merge request: cann/hcomm!1659
浏览文件
master
共 0 个文件变更+0-0