华为云AI开发平台ModelArtsAscend场景日志说明_云淘科技
Ascend场景日志说明
使用Ascend资源运行训练作业时,会产生Ascend相关日志。Ascend训练场景下会生成device日志、plog日志、proc log单卡训练日志、MindSpore日志、普通日志。
其中,Ascend训练场景下的普通日志包括训练进程日志、pip-requirement.txt 安装日志、ModelArts平台日志、ma-pre-start 日志和davincirun 日志。
Ascend日志结构举例说明如下:
obs://dgg-test-user/snt9-test-cases/log-out/ # 作业日志路径 ├──modelarts-job-9ccf15f2-6610-42f9-ab99-059ba049a41e ├── ascend ├── process_log ├── rank_0 ├── plog # plog日志 ... ├── device-0 # device日志 ... ├── mindspore # MindSpore日志 ├──modelarts-job-95f661bd-1527-41b8-971c-eca55e513254-worker-0.log # 普通日志 ├──modelarts-job-95f661bd-1527-41b8-971c-eca55e513254-proc-rank-0-device-0.txt # proc log单卡训练日志
日志类型 |
日志说明 |
日志文件名 |
---|---|---|
device日志 |
HOST侧用户进程,在DEVICE侧产生的AICPU、HCCP的日志,回传到HOST侧(训练容器)。 在训练进程结束后,该日志会上传至ModelArts 训练容器的 ~/ascend/log/ 目录中。 假若出现如下情况,device 日志会获取不到。 节点异常重启 |
~/ascend/log/device-{device-id}/device-{pid}_{timestamp}.log pid是HOST侧用户进程号。 样例: device-166_20220718191853764.log |
plog日志 |
HOST侧用户进程,在HOST侧产生的日志(例如:ACL /GE)。 默认设置 plog 日志打印, “ascend/log” 文件夹及相关文件默认不生成日志文件。 |
~/ascend/log/plog/plog-{pid}_{timestamp}.log pid是HOST侧用户进程号。 样例:plog-166_20220718191843620.log |
proc log |
proc log是单卡训练日志重定向文件,方便用户快速定位对应计算节点的日志。 |
[modelarts-job-uuid]-proc-rank-[rank id]-device-[device logic id].txt device id 为本次训练作业的NPU卡编号,取值单卡为0,8卡为0~7。 例如:Ascend规格为 8*Snt9时,device id取值为0~7;Ascend规格为 1*Snt9时,device id取值为0。 rank id 为本次训练作业的全局NPU卡编号,取值为0~计算节点数*卡数-1,单个计算节点下,rank id与device id取值相同。 样例: modelarts-job-95f661bd-1527-41b8-971c-eca55e513254-proc-rank-0-device-0.txt |
MindSpore日志 |
使用MindSpore+Ascend训练时会产生单独的MindSpore日志。 |
MindSpore的日志介绍请参见MindSpore官网。 |
普通训练日志 |
ma-pre-start 日志(Ascend场景特有):如果用户有定义ma-pre-start脚本,会产生该脚本执行日志。 |
合并输出在日志文件modelarts-job-[job id]-[task id].log中。 task id表示计算节点id,单节点时取值为worker-0,多节点时取值为worker-0、worker-1、…worker-{n-1},n为计算节点个数。 样例: modelarts-job-95f661bd-1527-41b8-971c-eca55e513254-worker-0.log |
Ascend场景日志存放路径
Ascend训练场景下,当训练进程退出后,ModelArts会上传训练容器中的日志文件至“作业日志路径” 参数设置的OBS目录中。
图1 在ModelArts选择训练作业日志在OBS的存放路径
图2 OBS桶中的日志内容
Ascend日志相关环境变量设置
您可以通过ma-pre-start 脚本修改默认环境变量配置。
ASCEND_GLOBAL_LOG_LEVEL=3 # 设置日志级别 debug级别为0;info级别为1;warning级别为2;error级别为3。 ASCEND_SLOG_PRINT_TO_STDOUT=1 # 设置plog日志是否打屏,1表示默认设置打屏。 ASCEND_GLOBAL_EVENT_ENABLE=1 # 设置事件级别 不开启Event日志级别为0;开启Event日志级别为1。
ma-pre-start脚本在与训练启动文件同级的目录下放置,命名为ma-pre-start.sh or ma-pre-start.py 脚本。
在训练启动文件被执行前,系统会在 /home/work/user-job-dir/ 目录下执行上述ma-pre-start脚本,使用该机制可以更新容器镜像内安装的 Ascend RUN 包,或者设置一些训练运行时额外需要的全局环境变量。
父主题: 查看训练作业日志
同意关联代理商云淘科技,购买华为云产品更优惠(QQ 78315851)
内容没看懂? 不太想学习?想快速解决? 有偿解决: 联系专家