导出性能数据

Atlas 200/500 A2推理产品Ascend RC场景不支持在设备上直接解析,需要将采集到的PROF_XXX目录拷贝到安装了Ascend-cann-toolkit开发套件包的环境下进行解析并导出。

前提条件

操作步骤

执行导出命令。

命令示例如下:

msprof --export=on --output=<dir> [--iteration-id=<number>] [--model-id=<number>] [--summary-format=<csv/json>] [--clear=on]
表1 参数说明(Atlas 200/300/500 推理产品

参数

说明

可选/必选

--export

解析并导出timeline和summary性能数据。可选on或off,默认值为off。

默认导出迭代数最多的模型ID(Model ID)的timeline和summary性能数据。

若需导出其他迭代/模型的数据,可在msprof命令执行完成后重新执行命令配置本参数和–model-id、–iteration-id参数。

对于未解析的PROF_XXX文件,自动解析后再导出。

示例:./msprof --export=on --output=/home/HwHiAiUser –model-id=2 –iteration-id=2

必选

--output

性能数据文件目录。须指定为PROF_XXX目录,例如:

/home/HwHiAiUser/profiler_data/PROF_XXX。

必选

--iteration-id

指定以Graph为粒度统计的迭代ID(每个Graph执行一次,Iteration ID加1,当一个脚本被编译为多个Graph时,该ID与脚本层面的Step ID不一致)。默认值为1。与--model-id必须同时配置。

可选

--model-id

模型ID。默认为迭代数最多的模型ID。与--iteration-id必须同时配置。

可选

--summary-format

summary数据文件的导出格式,取值为:

  • json:解析出的summary数据文件为json格式。
  • csv:解析出的summary数据文件为csv,默认值。

可选

--python-path

指定解析使用的Python解释器路径,要求Python3.7.5及以上版本。

可选

--clear

数据精简模式,开启后将在导出性能数据后删除PROF_XXX目录下的sqlite目录,以节省存储空间。可选on或off,默认值为off。

可选

表2 参数说明(其他芯片)

参数

说明

可选/必选

--export

解析并导出timeline和summary性能数据。可选on或off,默认值为off。

默认导出所有timeline和summary性能数据,若需导出个别迭代(Iteration ID)/模型(Model ID)的数据,可在msprof命令执行完成后重新执行命令配置本参数和–model-id、–iteration-id参数。

对于未解析的PROF_XXX文件,自动解析后再导出。

示例:./msprof --export=on --output=/home/HwHiAiUser

必选

--output

性能数据文件目录。须指定为PROF_XXX目录,例如:/home/HwHiAiUser/profiler_data/PROF_XXX。

必选

--iteration-id

指定以Graph为粒度统计的迭代ID(每个Graph执行一次,Iteration ID加1,当一个脚本被编译为多个Graph时,该ID与脚本层面的Step ID不一致)。

可选

--model-id

模型ID。

可选

--summary-format

summary数据文件的导出格式,支持csv和json两种格式,默认值为csv。

可选

--python-path

指定解析使用的Python解释器路径,要求Python3.7.5及以上版本。

可选

--clear

数据精简模式,开启后将在导出性能数据后删除PROF_XXX目录下的sqlite目录,以节省存储空间。可选on或off,默认值为off。

可选

注1:--iteration-id与--model-id必须同时配置。

注2:单算子场景和仅执行采集昇腾AI处理器系统数据场景,不支持--iteration-id和--model-id参数。

执行完上述命令后,会在collection-dir目录下的PROF_XXX目录的device_{id}或host目录下生成timeline和summary目录。

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

图1 性能数据目录结构(仅为示例)
  • 多Device场景下,若启动单采集进程,则仅生成一个PROF_XXX目录,若启动多采集进程则生成多个PROF_XXX目录,其中Device目录在PROF_XXX目录下生成,每个PROF_XXX目录下生成多少个Device目录与用户实际操作有关,不影响性能数据分析。
  • 性能数据详细介绍请参见timeline summary目录数据文件参考
  • timeline和summary目录中的文件是根据采集的实际性能数据进行生成,如果实际的性能数据没有相关的数据文件,就不会导出对应的timeline和summary数据。