函数:get_mem_info
产品支持情况
产品 |
是否支持 |
---|---|
√ |
|
√ |
|
√ |
|
√ |
|
√ |
|
√ |
功能说明
获取指定属性的应用可用内存的空闲大小和总大小,不包括系统预留内存大小。
函数原型
- C函数原型
1
aclError aclrtGetMemInfo(aclrtMemAttr attr, size_t *free, size_t *total)
- python函数
1
free, total, ret = acl.rt.get_mem_info(attr)
参数说明
参数名 |
输入/输出 |
说明 |
---|---|---|
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 推理产品 /A200I A2 Box 异构组件请根据实际硬件支持的情况,选择对应属性的内存,否则调用本接口获取到的空闲大小和总大小都为0。
Atlas 200I/500 A2 推理产品 由于Device上没有片上内存相关的内存,若指定查询片上内存相关内存,则系统内部自动转换为查询DDR相关内存,例如,若查询ACL_HBM_MEM,则系统内部实际查询ACL_DDR_MEM;若查询ACL_HBM_MEM_HUGE,则pyacl系统内部实际查询ACL_DDR_MEM_HUGE。
Atlas 推理系列产品 由于Device上没有片上内存相关的内存,若指定查询片上内存相关内存,则系统内部自动转换为查询DDR相关内存,例如,若查询ACL_HBM_MEM,则系统内部实际查询ACL_DDR_MEM;若查询ACL_HBM_MEM_HUGE,则系统内部实际查询ACL_DDR_MEM_HUGE。
Atlas A3 训练系列产品 /Atlas A3 推理系列产品