模型解析性能数据

使用profiler工具获取性能数据之后,mindspore提供mindinsight工具对性能数据进行解析。

在解析之前,用户需要在机器安装mindinsight工具,且完成属性配置,如果用户之前在机器上使用过mindinsight工具解析过性能数据,可直接跳转至“网页版可视化性能数据”。

    • 安装mindinsight工具
> pip install mindinsight
    • 完成mindinsight属性配置
> pip show mindinsight
> vim /root/anaconda3/envs/ms/lib/python3.7/site-packages/mindinsight/conf/constants.py(修改为本机mindinsight安装路径的constants.py文件)
#HOST = '127.0.0.1'
HOST = '8.92.9.109'  #修改了host
# Allow to support cross originresource sharing(CORS) enable. Default is disate
# If enable coRs, supPoRT REQUEsT METHOos should enable 'opTtRaLmethod.
ENABLE_ CORS = True
SUPPORT REQUEST METHODS = {'POST','GET', 'PUT', 'DELETE', 'OPTIONS'}  #增加了options

按上述方法修改constants.py即可(HOST修改为本机ip)。

    • 启动mindinsight
> mindinsight start --port 9006 --summary-base-dir /home/net/pro/
  • port可修改为任意端口
  • summary-base-dir修改为存放profiler数据的路径
    • 网页版可视化性能数据
    • mindinsight start之后,会给出一个网址,复制网址,网页打开即可
    • 展示了性能数据总览页面,包含了迭代轨迹(Step Trace)、算子性能、数据准备性能和Timeline等组件的数据总体呈现。各组件展示的数据如下:
      • 迭代轨迹:将训练step划分为几个阶段,统计每个阶段的耗时,按时间线进行展示;总览页展示了迭代轨迹图。
      • 算子性能:统计单算子以及各算子类型的执行时间,进行排序展示;总览页中展示了各算子类型时间占比的饼状图。
      • 数据准备性能:统计训练数据准备各阶段的性能情况;总览页中展示了各阶段性能可能存在瓶颈的step数目。
      • Timeline:按设备统计每个stream中task的耗时情况,在时间轴排列展示;总览页展示了Timeline中stream和task的汇总情况。
        可视化性能数据之后,用户可根据实际性能耗时场景跳转至对应的章节进行性能优化。

具体可参考官网mindinsight