下载
中文
注册

acltdtAllocBuf

Atlas 训练系列产品,不支持该接口。

Atlas A2训练系列产品/Atlas 800I A2推理产品,不支持该接口。

函数功能

申请共享Buffer内存。

约束说明

  • 使用acltdtAllocBuf接口申请内存后,数据区的长度为size参数的大小,在用户还未填入有效数据前,该内存的有效数据长度初始值为0,可在用户向内存中填入有效数据后,再通过acltdtSetBufDataLen接口设置有效数据长度。
  • 使用acltdtAllocBuf接口申请的内存,需要通过acltdtFreeBuf接口释放内存。
  • Atlas 200/300/500 推理产品上,仅支持在以下模式下使用该接口:

    RC模式

  • Atlas 200I/500 A2推理产品,仅支持在RC模式下使用该接口。

函数原型

aclError acltdtAllocBuf(size_t size, uint32_t type, acltdtBuf *buf)

参数说明

参数名

输入/输出

说明

size

输入

用于指定申请数据区大小,单位Byte,不能超过4G。

type

输入

共享Buffer内存类型,支持设置如下枚举值。

typedef enum {
    ACL_TDT_NORMAL_MEM = 0,
    ACL_TDT_DVPP_MEM
} acltdtAllocBufType;

buf

输出

申请成功,输出共享Buffer指针。

返回值说明

返回0表示成功,返回其他值表示失败。

参考资源

接口调用流程及示例,参见共享Buffer管理