故障诊断
- 创建诊断结果输出目录。
mkdir 诊断结果输出目录
- 执行命令开始进行诊断。
- 不指定--performance(-p)参数时,程序默认仅清洗根因节点、故障事件两个模块的对应数据。
ascend-fd diag -i 诊断输入目录 -o 诊断结果输出目录
诊断训练任务异常退出问题,回显示例如下:The diag job starts. Please wait. Job id: [****], run log file is [****]. +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | Ascend Fault-Diag Report | +--------------+------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 版本信息 | 类型 | 版本 | +--------------+------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | | Fault-Diag | 7.1.RC1 | +--------------+------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 根因节点分析 | 类型 | 描述 | +--------------+------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | | 说明 | 故障节点链中对端节点无法确认具体的Worker ID和Device ID,请通过IP检查对应Device设备 | +--------------+------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | | 根因节点 | ['worker-0 device-2'] | | | 首错节点 | worker-1 device-2: 2023-09-01-06:35:52.960343 | | | 现象描述 | 部分节点发生RoCE重传超次(ERROR CQE),此类节点为疑似根因节点,请排查。 | | | 根因节点链 | ['worker-0 device-2 -> 192.168.102.220'] | +--------------+------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 故障事件分析 | 类型 | 描述 | +--------------+------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | | 说明 | 1.诊断出多个故障,已按照发生时间排序,请优先排查靠前的故障。 | | | | 2.注:部分故障设备过多,仅展示16条。所有故障设备可在diag_report.json中查询。 | +--------------+------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | | 状态码 | xxx | | | 故障分类 | 类别:Network 组件:Network 模块:Network | | | 故障设备 | ['worker-0 device-2'] | | | 故障名称 | Link Down: NPU端闪断错误 | | | 故障描述 | 此服务器上某NPU网口发生Link Down闪断错误,且闪断时间超过30s。 | | | 建议方案 | 1. 请联系物理网络运维同事,收集交换机日志信息,并排查有无硬件问题(光模块是否在位、交换机链路是否闪断等); | | | 关键日志 | /usr/local/Ascend/driver/tools/hccn_tool -i 2 -link_stat -g | | | | [devid 2]current time : Fri Sep 1 06:37:26 2023 | | | | [devid 2]link up count : 2 | | | | [devid 2]link change records : | | | | [devid 2] Fri Sep 1 06:34:43 2023 LINK DOWN | | | | [devid 2] Thu Aug 31 07:30:46 2023 LINK UP | | | | [devid 2] Thu Aug 31 07:30:44 2023 LINK DOWN | | | | [devid 2] Thu Aug 31 07:30:43 2023 LINK UP | | | 关键传播链 | ['worker-0'] | | | | 故障码1(Link Down: NPU端闪断错误)-> 故障码2(RDMA通信重传超次)-> 故障码3(notify wait超时) | +--------------+------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ The diag job is complete.
诊断多实例推理任务异常,回显示例如下:
The diag job starts. Please wait. Job id: [****], run log file is [****]. ============================ 实例名:**** 节点名:[****,****] +--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | Ascend Fault-Diag Report | +--------------+------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 版本信息 | 类型 | 版本 | +--------------+------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------+ | | Fault-Diag | 7.1.RC1 | +--------------+------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 根因节点分析 | 类型 | 描述 | +--------------+------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------+ | | 说明 | 未诊断出根因节点,故障事件分析将尝试检测全部设备 | +--------------+------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------+ | | 根因节点 | ['Unknown Device'] | | | 现象描述 | 所有有效节点的Plog都没有错误日志信息,无法定位根因节点。同时请确认是否为正常的任务? | +--------------+------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 故障事件分析 | 类型 | 描述 | +--------------+------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 疑似根因故障 | 状态码 | xxx | | | 故障分类 | 类别:Software 组件:MindIE 模块:LLM | | | 故障设备 | ['worker-0 device-2'] | | | 故障名称 | BackendConfig配置参数校验失败 | | | 故障描述 | 配置参数不合法。 | | | 建议方案 | 1. 请联系华为工程师处理; | | | 关键日志 | [2025-06-17 16:59:10.282+08:00] [97] [147] [server] [WARN] [llm_infer_engine.cpp:117] : MIE05E040000[llm_backend] get model instance processing request failed | +--------------+------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------+ ============================ 实例名:**** 节点名:[****, ****] +-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | Ascend Fault-Diag Report | +--------------+------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 版本信息 | 类型 | 版本 | +--------------+------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | | Fault-Diag | 7.1.RC1 | +--------------+------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 根因节点分析 | 类型 | 描述 | +--------------+------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | | 根因节点 | ['worker-1 device-11'] | | | 现象描述 | 所有节点的Plog都没有记录超时类错误日志。日志中有报错的节点为疑似根因节点,请排查。 | | | 首错节点 | xx.xx.xx.xx device-11: 2025-06-17-17:03:02.614708 | | | 尾错节点 | xx.xx.xx.xx device-11: 2025-06-17-17:03:02.614708 | +--------------+------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 故障事件分析 | 类型 | 描述 | +--------------+------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 疑似根因故障 | 状态码 | xxx | | | 故障分类 | 类别:Software 组件:MindIE 模块:LLM | | | 故障设备 | ['worker-1 device-11'] | | | 故障名称 | BackendConfig配置参数校验失败 | | | 故障描述 | 配置参数不合法。 | | | 建议方案 | 1. 请联系华为工程师处理; | | | 关键日志 | [2025-06-17 17:01:44.605+08:00] [2015] [5415] [server] [WARN] [llm_infer_engine.cpp:117] : MIE05E040000[llm_backend] get model instance processing request failed | +--------------+------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+ …… The diag job is complete.
- 指定--performance(-p)参数时,将执行所有诊断模块。
ascend-fd diag -i 诊断输入目录 -o 诊断结果输出目录 --performance
诊断训练过程中性能劣化问题,回显示例如下:
+--------------------------------------------------------------------------------------------------------------------------------------------------+ | Ascend Fault-Diag Report | +--------------+----------+------------------------------------------------------------------------------------------------------------------------+ | 版本信息 | 类型 | 版本 | +--------------+----------+------------------------------------------------------------------------------------------------------------------------+ | |Fault-Diag| 7.1.RC1 | +--------------+----------+------------------------------------------------------------------------------------------------------------------------+ | 根因节点分析 | 类型 | 描述 | +--------------+----------+------------------------------------------------------------------------------------------------------------------------+ | | 说明 | 未诊断出根因节点,故障事件分析将尝试检测全部设备 | +--------------+----------+------------------------------------------------------------------------------------------------------------------------+ | | 根因节点 | ['Unknown Device'] | | | 现象描述 | 所有有效节点的Plog都没有错误日志信息, 且所有节点Plog都没有心跳信息。无法定位根因节点。同时请确认是否为正常的训练任务? | +--------------+----------+------------------------------------------------------------------------------------------------------------------------+ | 故障事件分析 | 类型 | 描述 | +--------------+----------+------------------------------------------------------------------------------------------------------------------------+ | | 状态码 | NORMAL_OR_UNSUPPORTED | | | 结果描述 | 故障事件分析模块无结果,可能为正常训练作业,无故障发生。如果训练任务异常中断,存在问题无法解决,请联系华为工程师处理。 | +--------------+----------+------------------------------------------------------------------------------------------------------------------------+ | 设备资源分析 | 类型 | 描述 | +--------------+----------+------------------------------------------------------------------------------------------------------------------------+ | | 说明 | 本分析模块下部分分析子项执行失败,诊断结果可能会受到影响从而不准确。请查看模块日志内的详细信息 | +--------------+----------+------------------------------------------------------------------------------------------------------------------------+ | | 状态码 | xxx | | | 故障设备 | worker-0 | | | 故障进程 | [2381084, 2381097] | | | 故障区间 | [('2023-08-11 02:18:00', '2023-08-11 02:21:00'), '故障概率 : 0.663'] | | | 故障名称 | CPU抢占(部分进程抢占) | | | 故障描述 | 设备资源产生异常,部分训练进程发生CPU资源抢占。 | +--------------+----------+------------------------------------------------------------------------------------------------------------------------+ | 网络拥塞分析 | 类型 | 描述 | +--------------+----------+------------------------------------------------------------------------------------------------------------------------+ | | 状态码 | xxx | | | -------- | | | | 故障设备 | worker-0 | | | 故障节点 | ['device-0', 'device-1', 'device-2', 'device-3', 'device-4', 'device-5', 'device-6', 'device-7'] | | | -------- | | | | 故障设备 | worker-1 | | | 故障节点 | ['device-0', 'device-1', 'device-2', 'device-3', 'device-4', 'device-5', 'device-6', 'device-7'] | | | -------- | | | | 故障名称 | 链路拥塞异常 | | | 故障描述 | 部分通信链路发生冲突拥塞。 | | | 建议方案 | 建议检查交换机路由策略。 | +--------------+----------+------------------------------------------------------------------------------------------------------------------------+
回显的关键参数说明如下:
表1 关键参数说明 一级参数
二级参数
说明
根因节点分析
-
用于分析故障根因节点。
-
根因节点
根因设备所在的Device。
-
现象描述
根因节点分析的现象描述。
-
首错节点
任务中最早发生错误的Device。
-
尾错节点
任务中最晚发生错误的Device。
-
Plog日志
当根因节点为Unknown Device且存在首错节点时,展示首错节点从首个error日志行开始的前10行Plog日志。
-
日志说明
当根因节点为Unknown Device且存在首错节点时,展示首错节点的原始Plog日志的路径说明。
-
根因节点链
重传超次时故障节点的传播关系。
-
卡间等待链
发生Socket/Notify超时故障节点的传播关系。
故障事件分析
-
用于分析故障根因节点所在设备的根因错误。
-
状态码
- 当诊断出故障时,显示具体的故障码。
- 当未诊断出故障时,显示NORMAL OR UNSUPPORTED。
-
故障名称
具体的故障名称。
-
故障分类
故障的类别及所在的组件和模块。
-
故障设备
发生故障的设备。
-
故障描述
针对该故障的详细描述或说明。
-
建议方案
针对该故障的处理建议。
-
关键日志
该故障对应的故障日志。
-
关键传播链
展示该故障引发关系中最长的一条链路。
设备资源分析
-
用于分析设备的资源状态。
-
状态码
- 当诊断出故障时,显示具体的故障码。
- 当未诊断出故障时,显示NODE_DIAGNOSIS_NORMAL。
-
故障设备
发生故障所在的节点名称。
-
故障名称
具体的故障名称。
-
建议方案
针对该故障的处理建议。
网络拥塞分析
-
用于分析节点间的网络状态。
-
状态码
- 当诊断出故障时,显示具体的故障码。
- 当未诊断出故障时,显示NET_DIAGNOSIS_NORMAL。
-
故障设备
发生故障所在的节点名称。
-
故障名称
具体的故障名称。
-
建议方案
针对该故障的处理建议。
注:
- 回显出现根因节点分析和故障事件分析,表示当前故障已经导致训练任务异常退出。
- 回显未诊断出根因节点且故障事件分析无结果,才会执行设备资源分析和网络拥塞分析,表示当前故障属于性能劣化问题,不会导致训练任务异常退出。
- 部分关键参数仅在特定场景中存在。
完成诊断后,用户可根据诊断结果中的建议方案进行优化。
诊断结果输出目录 ├── fault_diag_result ├── diag_report.json # 诊断结果 ├── diag_report_{实例名}.json # 多实例推理诊断结果
- 故障诊断执行出错时,“故障事件分析”回显中的说明(或分析失败)字段将会打印失败信息。如果想查看所有异常信息,可通过diag_report.json文件查看。
- 执行诊断命令时,若不指定--performance(-p)参数,则仅执行根因节点分析与故障事件分析两个模块,对应json文件中仅包含这两个模块的结果。
- 暂不支持发生过(有/无)冗余恢复的MindIE多实例推理集群故障诊断。由于(有/无)冗余恢复特性,会重启MindIE Pod,实例信息被刷新,MindIE各组件重启前后的日志存在相同目录,导致组件无法正确切分实例和日志。
- 不指定--performance(-p)参数时,程序默认仅清洗根因节点、故障事件两个模块的对应数据。
父主题: 使用指导