昇腾社区首页
中文
注册

DVPP输入和输出内存申请方式说明

DVPP输入输出内存申请要求说明:

表1 内存要求说明

功能模块

输入内存

输出内存

VPC

请使用AscendCL提供的接口申请/释放内存:

  • 使用acldvppMalloc接口申请内存,内存满足DVPP的要求(内存起始地址16对齐);
  • 使用acldvppFree接口释放内存。

请使用AscendCL提供的接口申请/释放内存:

  • 使用acldvppMalloc接口申请内存,内存满足DVPP的要求(内存起始地址16对齐);
  • 使用acldvppFree接口释放内存。

JPEGE和JPEGD

请使用AscendCL提供的接口申请/释放内存:

  • 使用acldvppMalloc接口申请内存,内存满足DVPP的要求(内存起始地址128对齐);
  • 使用acldvppFree接口释放内存。
由用户指定输出内存时,由用户自行释放内存 。请使用AscendCL提供的接口申请/释放内存:
  • 使用acldvppMalloc接口申请内存,内存满足DVPP的要求(内存起始地址128对齐)。在申请内存前,可以调用DvppGetOutParameter接口获取输出内存大小。
  • 使用acldvppFree接口释放内存。

PNGD

请使用AscendCL提供的接口申请/释放内存:

  • 使用acldvppMalloc接口申请内存,内存满足DVPP的要求(内存起始地址128对齐);
  • 使用acldvppFree接口释放内存。
由用户指定输出内存时,由用户自行释放内存 。请使用AscendCL提供的接口申请/释放内存:
  • 使用acldvppMalloc接口申请内存,内存满足DVPP的要求(内存起始地址128对齐)。在申请内存前,可以调用DvppGetOutParameter接口获取输出内存大小。
  • 使用acldvppFree接口释放内存。

VDEC和VENC

对内存无要求,支持调用aclrtMalloc/aclrtFree等原生接口申请/释放内存,也支持调用AscendCL提供的acldvppMalloc/acldvppFree接口申请/释放内存。

VDEC输出内存请使用AscendCL提供的接口申请/释放内存:

  • 使用acldvppMalloc接口申请内存,内存满足DVPP的要求(内存起始地址16对齐);
  • 使用acldvppFree接口释放内存。

VENC输出内存是DVPP内部管理,用户在使用时可以拷贝输出内存中的数据。