昇腾社区首页
中文
注册

导出Job Profiling的timeline数据

在导出timeline数据前,需要参见解析profiling数据解析训练的profiling数据。参见如下步骤导出timeline数据。

  1. 以Ascend-cann-toolkit开发套件包的运行用户登录开发环境。以HwHiAiUser用户为例。
  2. 切换至msprof.py脚本所在目录,如/home/HwHiAiUser/Ascend/ascend-toolkit/latest/toolkit/tools/profiler/profiler_tool/analysis/msprof。

    小技巧:为方便执行msprof.py脚本,您可以使用HwHiAiUser用户执行命令alias msprofanlysis='python3 /home/HwHiAiUser/Ascend/ascend-toolkit/latest/toolkit/tools/profiler/profiler_tool/analysis/msprof/msprof.py'设置别名,后续就可以不用进入/home/HwHiAiUser/Ascend/ascend-toolkit/latest/toolkit/tools/profiler/profiler_tool/analysis/msprof目录,在任意目录输入msprof即可执行profiling命令。

  3. 执行如下命令,导出timeline数据。

    命令行格式如下,参数说明参见表1

    python3 msprof.py export timeline [-h] -dir <dir> [--iteration-id <iteration_id>] [--model-id <model-id>]

    例如导出训练的profiling的timeline数据命令如下:

    python3 msprof.py export timeline -dir /home/HwHiAiUser/profiler_data --iteration-id 4

    表1 导出timeline数据命令参数说明

    参数名

    描述

    可选/必选

    -h,--help

    显示帮助信息,仅在获取使用方式时使用。

    可选

    -dir,--collection-dir

    收集到的Profiling数据目录。须指定为PROFXXX目录(仅生成汇总Timeline目录数据)或PROFXXX目录下的host或device目录(生成具体设备数据),例如:/home/HwHiAiUser/profiler_data/PROF_XXX/home/HwHiAiUser/profiler_data/PROF_XXX/device1

    必选

    --iteration-id

    某轮迭代的ID号,默认值为1。

    可选

    --model-id

    模型ID。

    可选

  4. 执行完上述命令后,会在collection-dir目录下的PROFXXX目录的device或host目录下生成timeline目录,目录中生成对应的json文件。

    生成的Profiling数据目录结构如图1所示。

    图1 Profiling数据目录结构
    • timeline目录中的文件是根据采集的实际profiling数据进行生成,如果实际的profiling数据没有相关的数据文件,就不会导出对应的timeline的数据。
    • 使用export命令能直接从已解析的Profiling数据中导出数据文件。当Profiling数据未解析时,单独执行export命令也能进行解析Profiling数据并导出数据文件。
    • 生成的json文件可以通过以下方式打开查看:在Chrome浏览器中输入“chrome://tracing”地址,然后将json文件拖到空白处打开。下文中文件介绍均使用此种形式。关于chrome trace的格式,可参考chrome trace介绍
    • 导出的数据中涉及到的时间节点(非Timestamp)为系统单调时间只与系统有关,非真实时间。