Skip to main content

Ascend Performance Analysis Tool.

Project description

Asight

软件介绍

Asight是一款基于NPU的深度学习性能分析工具, 工具支持的场景如下:

  • 基于训练推理过程中生成的维测数据, 一键分析网络性能瓶颈,并给出优化建议。
  • 一键拉起训练推理脚本,分析并给出优化建议(待开发)。

安装教程

使用如下命令进行Asight软件的安装:

pip install asight

使用说明

使用Asight工具进行性能分析支持如下两种命令:

  • 方法一:用“--profiling_dir”参数指定需要解析的Profiling数据目录,工具执行时会遍历““--profiling_dir””指定目录下的所有数据。

    asight analyze --profiling_dir=data
    

    “--profiling_dir”:存储Profiling数据的目录。Profiling数据获取方法如下:

    1. 在执行推理或训练程序时,请参见“Profiling工具使用指南”完成Profiling数据的采集、解析与导出(您可以在昇腾文档页面左上角切换版本,选择对应版本的指导文档)。

      数据采集时需要配置“aic-metrics”参数为“PipeUtilization”,“aicpu”参数为“on”。

    2. Asight工具依赖的是Profiling解析导出后的timeline数据、summary数据以及info.json*文件,请确保指定的“profiling_dir”目录下存在以上文件。

  • 方法二:用“--data_dir”参数指定需要解析的各类数据目录,包括但不限于Profling数据、图数据等信息,工具执行时会遍历“--data_dir”指定目录下的所有数据。

    asight analyze --data_dir=data
    

    说明:当前工具版本“--data_dir”目录下仅支持存放Profling数据,Profling数据的要求请参见“--profling_dir”参数说明。

结果说明

  1. 工具执行完毕后,会在屏幕打印Problem detected说明识别到的问题, Recommonded change给出优化建议 。
  2. 工具执行完毕后,会在当前目录下生成asight.xlsx文件,展示详细问题和建议。

分析能力说明

当前版本,Asight性能分析工具支持如下问题的分析:

  • AI Core算子性能问题
    • BlockDim问题:BlockDim利用率不足,说明算子未开启多核并行计算或者AI Core利用不足, 建议进行算子调优。
    • 算子无Bound问题: 代表算子的Vector/Cube/Scalar/MTE1~MTE3指令的cycle数在所有指令的cycle数中占比未达到80%,即AI Core资源未被充分利用,建议进行算子调优。
    • 算子MTE2 Bound问题:算子MTE2利用率超过80%,则说明数据搬移性能较差,建议进行子图调优。
  • AI CPU算子问题:
    • AI CPU算子问题:网络中存在AI CPU算子,影响网络性能, 建议修改模型,从而避免使用AI CPU算子。

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

asight-0.1.2-py3-none-any.whl (28.5 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page