函数:get_mem_info

C函数原型

aclError aclrtGetMemInfo(aclrtMemAttr attr, size_t *free, size_t *total)

Python函数

free, total, ret = acl.rt.get_mem_info(attr)

函数功能

获取指定属性的pyACL应用可用内存的空闲大小和总大小,不包括系统预留内存大小。

请根据实际硬件支持的情况,选择对应属性的内存,否则调用本接口获取到的空闲大小和总大小都为0。

输入说明

attr:int,需要查询的内存的属性值,具体请参见aclrtMemAttr

返回值说明

free:int,对应属性的内存的空闲大小,单位Byte。

total:int,对应属性的内存的总大小,单位Byte。

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

约束说明

  • 调用本接口前是必须先指定用于计算的Device(例如调用acl.rt.set_device接口指定用于计算的Device),因此本接口中不体现Device ID。
  • Atlas 200/300/500 推理产品

    请根据实际硬件支持的情况,选择对应属性的内存,否则调用本接口获取到的空闲大小和总大小都为0。

  • Atlas 训练系列产品

    请根据实际硬件支持的情况,选择对应属性的内存,否则调用本接口获取到的空闲大小和总大小都为0。

  • Atlas A2训练系列产品/Atlas 800I A2推理产品

    请根据实际硬件支持的情况,选择对应属性的内存,否则调用本接口获取到的空闲大小和总大小都为0。

  • Atlas 200I/500 A2推理产品

    由于Device上没有片上内存相关的内存,若指定查询片上内存相关内存,则pyACL系统内部自动转换为查询DDR相关内存,例如,若查询ACL_HBM_MEM,则pyACL系统内部实际查询ACL_DDR_MEM;若查询ACL_HBM_MEM_HUGE,则pyACL系统内部实际查询ACL_DDR_MEM_HUGE。

  • Atlas 推理系列产品

    由于Device上没有片上内存相关的内存,若指定查询片上内存相关内存,则pyACL系统内部自动转换为查询DDR相关内存,例如,若查询ACL_HBM_MEM,则pyACL系统内部实际查询ACL_DDR_MEM;若查询ACL_HBM_MEM_HUGE,则pyACL系统内部实际查询ACL_DDR_MEM_HUGE。