CANN/driver设备故障查询API
dcmi_get_device_errorinfo【免费下载链接】driver本项目是CANN提供的驱动模块实现基础驱动和资源管理及调度等功能使能昇腾芯片。项目地址: https://gitcode.com/cann/driver函数原型int dcmi_get_device_errorinfo(int card_id, int device_id, int errorcode, unsigned char *errorinfo, int buf_size)功能说明查询设备故障描述。参数说明参数名称输入/输出类型描述card_id输入int设备ID当前实际支持的ID通过dcmi_get_card_num_list接口获取。device_id输入int芯片ID通过dcmi_get_device_id_in_card接口获取。取值范围如下NPU芯片[0, device_id_max-1]。MCU芯片mcu_id。说明device_id_max值为1当device_id为0时表示NPU芯片当device_id为1时表示MCU芯片。errorcode输入int要查询的错误码通过dcmi_get_device_errorcode_v2接口获取。errorinfo输出unsigned char *对应的错误字符描述。buf_size输入int传入的errorinfo取值范围是大于等于48字节。若设置的errorinfo小于48字节则系统报错。若设置的errorinfo在48~255字节之间则在《健康管理故障定义》中的故障码查询出来的故障信息为简化信息。若设置的errorinfo大于等于256字节则查询出来的故障信息为实际故障信息。返回值说明类型描述int处理结果成功返回0。失败返回码请参见return_codes。异常处理无。约束说明该接口在后续版本将会删除推荐使用dcmi_get_device_errorcode_string。表 1不同部署场景下的支持情况产品形态物理机场景裸机root用户物理机场景裸机运行用户组非root用户物理机普通容器场景root用户Atlas 900 A2 PoD 集群基础单元YYYAtlas 800T A2 训练服务器YYYAtlas 800I A2 推理服务器YYYAtlas 200T A2 Box16 异构子框YYYA200I A2 Box 异构组件YYYAtlas 300I A2 推理卡YYYAtlas 300T A2 训练卡YYY注Y表示支持N表示不支持NA表示不涉及当前未规划此场景。调用示例#define ERROR_CODE_MAX_NUM (128) #define BUF_SIZE (256) … int ret 0; int card_id 0; int device_id 0; int errorcount 0; int error_code_width 0; unsigned char errorinfo[BUF_SIZE] {0}; unsigned char errorcode [ERROR_CODE_MAX_NUM] {0}; ret dcmi_get_device_errorcode_v2(card_id, device_id, errorcount, errorcode, error_code_width); if ((ret ! 0) || (errorcount 0)){ //todo:记录日志 return ret; } ret dcmi_get_device_errorinfo(card_id, device_id, errorcode[0], errorinfo, BUF_SIZE); if (ret ! 0){ //todo:记录日志 return ret; } …【免费下载链接】driver本项目是CANN提供的驱动模块实现基础驱动和资源管理及调度等功能使能昇腾芯片。项目地址: https://gitcode.com/cann/driver创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考