昇腾社区首页
中文
注册

函数:query_size

产品支持情况

产品

是否支持

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

Atlas A2 训练系列产品 / Atlas 800I A2 推理产品 /A200I A2 Box 异构组件

Atlas 训练系列产品

Atlas 推理系列产品

Atlas 200I/500 A2 推理产品

Atlas 200/300/500 推理产品

功能说明

根据模型文件获取模型执行时所需的权值内存大小、工作内存大小。

函数原型

  • C函数原型
    1
    aclError aclmdlQuerySize(const char *fileName, size_t *workSize, size_t *weightSize)
    
  • python函数
    1
    work_size, weight_size, ret = acl.mdl.query_size(file_name)
    

参数说明

参数名

说明

file_name

str,需要获取内存信息的模型路径,路径中包含文件名。运行程序(APP)的用户需要对该路径有访问权限。

返回值说明

返回值

说明

work_size

int,模型执行时所需的工作内存的大小,单位Byte。

weight_size

int,模型执行时所需权值内存的大小,单位Byte。

ret

int,错误码,返回0表示成功,返回其它值表示失败。

约束说明

当由用户管理内存时,为节省内存资源,在申请工作内存、权值内存前,需要调用acl.mdl.query_size接口查询模型运行时所需工作内存、权值内存的大小。

如果模型输入数据的Shape不确定,则不能调用acl.mdl.query_size接口查询内存大小,在加载模型时,就无法由用户管理内存,此时需选择由系统管理内存的模型加载接口(例如,acl.mdl.load_from_fileacl.mdl.load_from_mem)。

资源参考

接口调用流程,参见模型加载