昇腾社区首页
中文
注册
开发者
下载

aclrtMemImportFromShareableHandleV2

产品支持情况

产品

是否支持

Atlas A3 训练系列产品/Atlas A3 推理系列产品

Atlas A2 训练系列产品/Atlas A2 推理系列产品

Atlas 200I/500 A2 推理产品

Atlas 推理系列产品

Atlas 训练系列产品

功能说明

在本进程中获取shareableHandle里的信息,并返回本进程中的handle,用于在本进程中建立虚拟地址与物理地址之间的映射关系。

本接口是在接口aclrtMemImportFromShareableHandle基础上进行了增强,用户可通过shareType参数指定导出AI Server内的共享句柄,或导出跨AI Server的共享句柄。

本接口的使用流程可参见aclrtMemExportToShareableHandle,但本接口需配合调用aclrtMemExportToShareableHandleV2接口导出共享句柄、调用aclrtMemSetPidToShareableHandleV2接口设置进程白名单。

函数原型

aclError aclrtMemImportFromShareableHandleV2(void *shareableHandle, aclrtMemSharedHandleType shareType, uint64_t flags, aclrtDrvMemHandle *handle);

参数说明

参数名

输入/输出

说明

shareableHandle

输入

待共享的shareableHandle,与aclrtMemExportToShareableHandleV2接口中导出的shareableHandle保持一致。

handle与shareableHandle是一一对应的关系,在同一个进程中,不允许一对多、或多对一。

shareType

输入

导出的共享句柄类型。

flags

输入

预留参数,当前固定设置为0。

handle

输出

本进程的物理内存handle。

返回值说明

返回0表示成功,返回其他值表示失败,请参见aclError

约束说明

  • Atlas 200I/500 A2 推理产品上,Ascend RC形态不支持调用本接口。
  • 在调用本接口前,需确保待共享的物理内存存在,不能提前释放。
  • 不支持同一个进程中调用aclrtMemImportFromShareableHandleV2、aclrtMemExportToShareableHandleV2这两个接口,只支持跨进程调用。
  • 内存使用完成后,要及时调用aclrtFreePhysical销毁handle,并且需所有调用本接口的进程都销毁shareableHandle的情况下,handle才会真正销毁。