AI开发平台MODELARTS-MA-Advisor使用指导:analyze命令详解

时间:2024-12-30 17:36:42

analyze命令详解

  • all:同时进行融合算子图调优、亲和API替换调优、AICPU调优、算子调优等分析,并输出相关简略建议到执行终端中,并生成“ma_advisor_**.html”文件可供用户在浏览器中进行预览:
    ma-advisor analyze all --data-dir='/temp/profiling_dir'
    图5 命令样例

    命令执行后同时会生成各场景优化建议的html,相关算子问题概览会按照不同建议进行汇总。

    图6 生成结果
    表1 参数解释

    参数

    缩写

    是否必填

    说明

    --data-dir

    -d

    必填

    代表存储Profiling单卡性能数据的目录,目前暂不支持同时分析多卡Profiling目录,Profiling数据可通过如下方法获取:

    在执行推理或训练程序时,完成Profiling数据的采集、解析与导出(您可以在昇腾文档页面左上角切换版本,选择对应版本的指导文档)。数据采集时需要配置“aic-metrics”参数为“PipeUtilization”,“aicpu”参数为“on”。

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

    --cann_version

    -cv

    选填

    使用Profiling工具采集时对应的CANN软件版本,可通过在环境中执行如下命令获取其version字段,目前配套的兼容版本为“6.3.RC2”,“7.0.RC1”和“7.0.0”,此字段不填默认按“7.0.RC1”版本数据进行处理,其余版本采集的Profiling数据在分析时可能会导致不可知问题:

    cat /usr/local/Ascend/ascend-toolkit/latest/aarch64-linux/ascend_toolkit_install.info

    --torch_version

    -tv

    选填

    运行环境的torch版本,默认为1.11.0,支持torch1.11.0和torch2.1.0,当运行环境torch版本为其他版本如torch1.11.3时,可以忽略小版本号差异选择相近的torch版本如1.11.0。

    --debug

    -D

    选填

    工具执行报错时可打开此开关,将会展示详细保存堆栈信息。

    --help

    -h,-H

    选填

    在需要查询当前命令附属子命令或相关参数时,给出帮助建议。

  • graph:单独对推理dump的子图数据进行调优,并在分析完成后,给出相关建议到终端中,并生成“ma_advisor_graph_**.html”文件到执行目录中,目前暂不支持同时分析多卡推理性能数据:
    ma-advisor analyze graph --data-dir='/temp/profiling_dir'
    图7 命令样例

    命令执行后生成融合算子优化建议的HTML,相关融合算子问题概览会按照不同融合算子类型进行汇总。

    图8 生成结果
    表2 参数解释

    参数

    缩写

    是否必填

    说明

    --data-dir

    -d

    必填

    代表存储Profiling单卡性能数据的目录,目前暂不支持同时分析多卡Profiling目录,Profiling数据可通过如下方法获取:

    • 在执行推理或训练程序时,完成Profiling数据的采集、解析与导出(您可以在昇腾文档页面左上角切换版本,选择对应版本的指导文档)。数据采集时需要配置“aic-metrics”参数为“PipeUtilization”,“aicpu”参数为“on”, “with_stack”参数为True。
    • MA-Advisor依赖Profiling工具解析后的timeline数据、summary数据以及info.json*文件,请确保指定的“profiling_dir”目录下存在以上文件。

    --cann_version

    -cv

    选填

    使用Profiling工具采集时对应的CANN软件版本,可通过在环境中执行如下命令获取其version字段,目前配套的兼容版本为“6.3.RC2”,“7.0.RC1”和“7.0.0”,此字段不填默认按“7.0.RC1”版本数据进行处理,其余版本采集的Profiling数据在分析时可能会导致不可知问题:

    cat /usr/local/Ascend/ascend-toolkit/latest/aarch64-linux/ascend_toolkit_install.info

    --debug

    -D

    选填

    工具执行报错时可打开此开关,将会展示详细保存堆栈信息。

    --help

    -h,-H

    选填

    在需要查询当前命令附属子命令或相关参数时,给出帮助建议。

  • profiling:单独对推理、训练Profiling性能数据进行算子调优分析,在分析完成后,给出相关分析说明到执行终端中,并生成“ma_advisor_profiling_**.html”文件到执行目录中,目前暂不支持同时分析多卡Profiling性能数据。
    ma-advisor analyze profiling --data-dir='/temp/profiling_dir'
    图9 命令样例

    命令执行后生成AICORE算子使用AOE配置优化建议、AICPU算子优化建议的HTML,目前由于AOE优化不支持动态shape算子优化,因此如果检测到算子均为动态shape时,将不会推荐AOE调优;除此之外,单算子问题概览会按照不同算子类型进行汇总,同时根据耗时大小进行降序显示。

    图10 生成结果
    表3 参数解释

    参数

    缩写

    是否必填

    说明

    --data-dir

    -d

    必填

    代表存储Profiling单卡性能数据的目录,目前暂不支持同时分析多卡Profiling目录,Profiling数据可通过如下方法获取:

    在执行推理或训练程序时,完成Profiling数据的采集、解析与导出(您可以在昇腾文档页面左上角切换版本,选择对应版本的指导文档)。数据采集时需要配置“aic-metrics”参数为“PipeUtilization”,“aicpu”参数为“on”。MA-Advisor依赖Profiling工具解析后的timeline数据、summary数据以及info.json*文件,请确保指定的“profiling_dir”目录下存在以上文件。

    --cann_version

    -cv

    选填

    使用Profiling工具采集时对应的CANN软件版本,可通过在环境中执行如下命令获取其version字段,目前配套的兼容版本为“6.3.RC2”,“7.0.RC1”和“7.0.0”,此字段不填默认按“7.0.RC1”版本数据进行处理,其余版本采集的Profiling数据在分析时可能会导致不可知问题:

    cat /usr/local/Ascend/ascend-toolkit/latest/aarch64-linux/ascend_toolkit_install.info

    --ntework_type

    -t

    选填

    “train”或者“infer”,不填默认为“train”。

    --debug

    -D

    选填

    工具执行报错时可打开此开关,将会展示详细保存堆栈信息。

    --help

    -h,-H

    选填

    在需要查询当前命令附属子命令或相关参数时,给出帮助建议。

  • timeline:单独对推理、训练timeline性能数据进行亲和API调优分析,在分析完成后,给出相关亲和API分析说明到执行终端中,并生成“ma_advisor_timeline_**.html”文件到执行目录中,目前暂不支持同时分析多卡Profiling性能数据。
    ma-advisor analyze timeline --data-dir='/temp/profiling_dir'
    图11 命令样例

    命令执行后生成亲和API相关优化建议的html,将会按建议替换的亲和API进行汇总聚类,同时给出对应待替换API的堆栈信息。

    图12 生成结果
    表4 参数解释

    参数

    缩写

    是否必填

    说明

    --data-dir

    -d

    必填

    代表存储Profiling单卡性能数据的目录,目前暂不支持同时分析多卡Profiling目录,Profiling数据可通过如下方法获取:

    • 在执行推理或训练程序时,完成Profiling数据的采集、解析与导出(您可以在昇腾文档页面左上角切换版本,选择对应版本的指导文档)。数据采集时需要配置“aic-metrics”参数为“PipeUtilization”,“aicpu”参数为“on”, “with_stack”参数为True。
    • MA-Advisor依赖Profiling工具解析后的timeline数据、summary数据以及info.json*文件,请确保指定的“profiling_dir”目录下存在以上文件。

    --cann_version

    -cv

    选填

    使用Profiling工具采集时对应的CANN软件版本,可通过在环境中执行如下命令获取其version字段,目前配套的兼容版本为“6.3.RC2”,“7.0.RC1”和“7.0.0”,此字段不填默认按“7.0.RC1”版本数据进行处理,其余版本采集的Profiling数据在分析时可能会导致不可知问题:

    cat /usr/local/Ascend/ascend-toolkit/latest/aarch64-linux/ascend_toolkit_install.info

    --debug

    -D

    选填

    工具执行报错时可打开此开关,将会展示详细保存堆栈信息。

    --help

    -h,-H

    选填

    在需要查询当前命令附属子命令或相关参数时,给出帮助建议。

support.huaweicloud.com/bestpractice-modelarts/modelarts_10_2515.html