本章节为使用示例,仅供参考,请根据训练平台、训练任务异常场景和集群存储等实际情况参考使用。
以下日志目录仅为示例,用户可以根据实际情况自定义存储目录。示例以单台服务器名为worker-0为例,请用户为所有训练服务器创建相应目录。
创建日志目录时建议保证目录具有默认的读写权限。训练容器启动时不建议挂载root用户目录为日志存储目录。
mkdir -p /ascend_cluster_log
mkdir -p /ascend_cluster_log/device_log/worker-0
mkdir -p /ascend_cluster_log/job202405181309/worker-0
mkdir -p /ascend_cluster_log/job202405181309/worker-0/process_log # CANN应用类日志路径 mkdir -p /ascend_cluster_log/job202405181309/worker-0/train_log # 用户训练日志 mkdir -p /ascend_cluster_log/job202405181309/worker-0/environment_check # 训练前或后NPU环境检查文件
Driver安装目录/driver/tools/msnpureport_auto_export.sh 采集间隔时间 最大存储目录容量 /Device日志存储目录名
如:
/usr/local/Ascend/driver/tools/msnpureport_auto_export.sh 300 10 /ascend_cluster_log/device_log/worker-0
在以上示例中,采集间隔时间等参数说明如下
参数 |
说明 |
---|---|
采集间隔时间 |
导出Device侧日志和文件的间隔时间。取值为大于0的整数,单位是s,如:2s。 |
最大存储目录容量 |
导出Device侧日志和文件的存储目录容量。取值为大于等于2的整数,单位是G,如:10G。 |
Device日志存储目录名 |
导出Device侧日志和文件的存储路径(任意的绝对路径)。如:“/home/log/”。 |
docker run \ -v /容器内CANN应用类日志路径:/共享存储下的CANN应用类日志路径 \ --env ASCEND_PROCESS_LOG_PATH=/容器内CANN应用类日志路径 \ \...其他启动项...\ ${训练镜像名} /bin/bash
如:
docker run \ -v /ascend_cluster_log/job202405181309/worker-0/process_log:/ascend_cluster_log/job202405181309/worker-0/process_log \ --env ASCEND_PROCESS_LOG_PATH=/ascend_cluster_log/job202405181309/worker-0/process_log \ \...其他启动项...\ ${训练镜像名} /bin/bash
export ASCEND_PROCESS_LOG_PATH /CANN应用类日志路径
export ASCEND_PROCESS_LOG_PATH /ascend_cluster_log/job202405181309/worker-0/process_log
docker run \ -v /容器内用户训练日志采集目录:/共享存储下的用户训练日志采集目录 \ \...其他启动项...\ ${训练镜像名} /bin/bash
如:
docker run \ -v /ascend_cluster_log/job202405181309/worker-0/train_log:/ascend_cluster_log/job202405181309/worker-0/train_log \ \...其他启动项...\ ${训练镜像名} /bin/bash
python train.py > /ascend_cluster_log/job202405181309/worker-0/train_log/rank-0.txt 2>&1
以单台服务器名为worker-0为例,请用户为所有训练服务创建目录,并执行清洗命令。
mkdir -p /ascend_cluster_log/job202405181309/faultdiag_work_tmp/parse_out/worker-0 # 清洗结果输出目录 mkdir -p /ascend_cluster_log/job202405181309/faultdiag_work_tmp/diag_out # 诊断结果输出目录
ascend-fd parse --process_log CANN应用类日志目录 --train_log 用户训练日志目录 --env_check 环境检查文件目录 --host_log 主机侧操作系统日志 --device_log NPU侧日志目录 -o 清洗输出目录名
ascend-fd parse --process_log /ascend_cluster_log/job202405181309/worker-0/process_log --train_log /ascend_cluster_log/job202405181309/worker-0/train_log --env_check /ascend_cluster_log/job202405181309/worker-0/environment_check --host_log /var/log --device_log /ascend_cluster_log/device_log/worker-0/msnpureport_log_new -o /ascend_cluster_log/job202405181309/faultdiag_work_tmp/parse_out/worker-0
更多关于日志清洗的详细信息,请参见日志清洗与转储章节。
ascend-fd diag -i /清洗输出目录名 -o /诊断结果输出目录名
ascend-fd diag -i /ascend_cluster_log/job202405181309/faultdiag_work_tmp/parse_out -o /ascend_cluster_log/job202405181309/faultdiag_work_tmp/diag_out
更多关于故障诊断的详细信息,请参见故障诊断章节。