CANN/HCOMM内存导入关闭API
HcommMemUnimport
【免费下载链接】hcommHCOMM(Huawei Communication)是HCCL的通信基础库,提供通信域以及通信资源的管理能力。项目地址: https://gitcode.com/cann/hcomm
产品支持情况
- Ascend 950PR/Ascend 950DT:支持
- Atlas A3 训练系列产品/Atlas A3 推理系列产品:不支持
- Atlas A2 训练系列产品/Atlas A2 推理系列产品:不支持
功能说明
关闭内存导入。
函数原型
HcommResult HcommMemUnimport(EndpointHandle endpointHandle, const void *memDesc, uint32_t descLen)参数说明
| 参数名 | 输入/输出 | 说明 |
|---|---|---|
| endpointHandle | 输入 | Endpoint句柄。 EndpointHandle类型的定义请参见EndpointHandle。 |
| memDesc | 输入 | 描述信息指针。 |
| memDescLen | 输入 | 描述信息长度。 |
返回值
HcommResult:接口成功返回0,其他失败。
约束说明
支持的通信协议包括:RoCE、UBC_TP、UBC_CTP、UBoE。
调用示例
// export端操作 const EndpointDesc endpointDesc = { .protocol = COMM_PROTOCOL_ROCE, .commAddr = { .type = COMM_ADDR_TYPE_IP_V4, .addr = {{192, 168, 1, 100}} }, .loc = { .locType = ENDPOINT_LOC_TYPE_DEVICE, .device = { .devPhyId = 0, .superDevId = 0, .serverIdx = 0, .superPodIdx = 0 } }, .raws = {0} }; EndpointHandle endpointHandle = nullptr; HcommResult result = HcommEndpointCreate(&endpointDesc, &endpointHandle); const char *memTag = "HcclBuffer"; CommMem mem = { .type = COMM_MEM_TYPE_DEVICE, .addr = reinterpret_cast<void*>(0x1111), .size = 100 }; HcommMemHandle memHandle; result = HcommMemReg(endpointHandle, memTag, &mem, &memHandle); uint32_t* memDescLen; void* memDesc = nullptr; result = HcommMemExport(endpointHandle, memHandle, memDesc, memDescLen); // import端操作 CommMem mem; result = HcommMemImport(endpointHandle, memDesc, memDescLen, &mem); result = HcommUnimport(endpointHandle, memDesc, memDescLen);【免费下载链接】hcommHCOMM(Huawei Communication)是HCCL的通信基础库,提供通信域以及通信资源的管理能力。项目地址: https://gitcode.com/cann/hcomm
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
