2. EID格式
2.1. EID通用格式
EID日志打印格式:
LOGLEVEL EID([device id]):[Error Code],[Description],[Recover Suggestion],[Error Data]
编号 |
字段 |
说明 |
|---|---|---|
1 |
LOGLEVEL |
表示日志等级,定义参见表 2.2 |
2 |
device id |
发生EID错误的GPU设备PCIe DBDF号,如0000:0e:00.0 |
3 |
Error Code |
错误码 |
4 |
Description |
该EID错误的简要描述信息 |
5 |
Recover Suggestion |
可选,可能的修复方案 |
6 |
Error Data |
可选,错误相关的数据,可以帮助进一步的问题诊断 |
编号 |
LOGLEVEL |
说明 |
|---|---|---|
1 |
EMERG |
紧急错误,系统不可用 |
2 |
ALERT |
告警错误,需要立即处理 |
3 |
CRIT |
严重错误 |
4 |
ERROR |
一般错误 |
5 |
WARN |
告警提示 |
6 |
INFO |
普通信息 |
7 |
DEBUG |
调试信息 |
2.2. Driver日志格式
在Linux系统中,GPU KMD内核驱动打印日志通常会放在 /var/log/messages路径下,通过以下命令可以查看GPU KMD打印的错误信息:
sudo grep -P "METAX.*ERROR|MXCD.*ERROR|MXGVM.*ERROR" /var/log/messages
备注
Linux内核日志存放路径会因Linux发行版本不同而有所区别,主流Linux发行版内核日志存放路径如下:
Ubuntu: /var/log/kern.log
CentOS: /var/log/messages
如果存在GPU KMD内核驱动错误记录,比如ATU Fault,会得到类似如下日志:
[…] METAX.B10200.ATU.ERROR EID (xxxx:xx:xx.x): 0x2101, atu 0x0 pde_base_addr 0x50016c0000
[…] METAX.B10200.ATU.ERROR EID (xxxx:xx:xx.x): 0x2101, xpid 1 vfid 0 vf 0 page va 224200000
[…] METAX.B10200.ATU.ERROR EID (xxxx:xx:xx.x): 0x2101, hwip DMAW0 fault code(7) perm code: 2
2.2.1. Driver日志正文打印格式
MODULE.DBDF.SUBMOD.LOGLEVEL EID([device id]):[Error Code],[Description],[Recover Suggestion],[Error Data]
其中 MODULE.DBDF.SUBMOD 为Driver特有字段。LOGLEVEL 之后字段说明参见 2.1 EID通用格式。
编号 |
字段 |
说明 |
|---|---|---|
1 |
MODULE |
打印日志的主模块,目前包括 |
2 |
DBDF |
日志所属的GPU卡的PCIe DBDF(Domain Bus Device Function) 格式为 |
3 |
SUBMOD |
打印日志的子模块,根据主模块的不同,子模块的具体定义也不一样 |
2.3. SDK日志格式
在Linux系统中,GPU SDK EID打印日志默认存放在 /var/log/syslog 路径下,通过以下几种方法可以查看GPU SDK EID打印的错误信息。
备注
Linux内核日志存放路径会因Linux发行版本不同而有所区别,主流Linux发行版内核日志存放路径如下:
Ubuntu: /var/log/syslog
CentOS: /var/log/messages
实时查看:使用以下命令可以实时查看日志文件的最新内容
sudo tail -f /var/log/syslog
过滤特定日志:使用以下命令可以查找包含特定关键词的日志,例如“error”
sudo grep "error" /var/log/syslog
分页查看:使用以下命令可以分页查看日志文件
sudo less /var/log/syslog
如果存在SDK EID错误记录,比如执行用户进程 eidNumericTrap 出现核函数除零错误,会得到类似如下日志:
./eidNumericTrap
sudo tail -f /var/log/syslog
……
Jun 4 15:22:36 myhostname maca:[406708.798499]SDK.0203300X.UMD.WARN EID(0000:0a:00.0):0x3111,(eidNumericTrap)Divide 0,check app kernel, ZL16kernel_data_copyPfs
syslog 日志遵循标准格式,每条记录包含以下字段:
时间戳:记录事件发生时间(如
Jun 4 15:22:36)。主机名:生成日志的主机名或IP地址(如
myhostname)。服务名:产生日志的服务或程序名称,MXMACA SDK的服务名固定为
maca。程序ID:产生日志的进程ID和线程ID(如
:[406708.798499])。日志正文:消息内容,描述具体事件或错误信息。
2.3.1. SDK日志正文打印格式
PACKAGE.VERSION.SUBPACK.LOGLEVEL EID([device id]):[Error Code],[Description],[Recover Suggestion],[Error Data] MODULE.DBDF.SUBMOD.LOGLEVEL CONTENT
其中 PACKAGE.VERSION.SUBPACK 为SDK特有字段。LOGLEVEL 之后字段说明参见 2.1 EID通用格式。
编号 |
字段 |
说明 |
|---|---|---|
1 |
PACKAGE |
打印日志的软件发布包名,目前只包括 |
2 |
VERSION |
打印日志的软件发布包版本, 内容为 左起1-2位为软件架构版本X(如 左起3-5位为该软件架构版本发布开始的第Y个版本,从0开始计数(如 左起第6位为第Y个版本的分支Z(如 左起7-8位为基于X.Y.Z的构建数量,从0开始计数(如 |
3 |
SUBPACK |
打印日志的软件发布包子模块,目前只包括 |