使用前准备
环境准备
- 请参考环境准备,完成相关环境变量的配置。
- 若要使用MindStudio Insight进行查看时,需要单独安装MindStudio Insight软件包,具体下载链接请参见安装与卸载。
约束
- 性能数据采集时间建议在5min以内,同时推荐用户设置的内存大小在20G以上(例如容器配置:docker run --memory=20g 容器名)。
- 请确保性能数据保存在不含软链接的当前用户目录下,否则可能引起安全问题。
msprof op simulator配置
msProf工具的仿真功能仅支持单卡场景,且需在0卡上运行。若修改可见卡号,则会导致仿真失败。
- msProf工具使用--config模式进行算子仿真调优之前,需执行如下命令配置环境变量。
export LD_LIBRARY_PATH=${INSTALL_DIR}/tools/simulator/Ascendxxxyy/lib:$LD_LIBRARY_PATH # xxxyy为用户实际使用的具体芯片类型
请根据CANN软件包实际安装路径和昇腾AI处理器的型号对以上环境变量进行修改。
- 编译选项需添加 -g,使能算子代码热点图和代码调用栈功能。
- 添加 -g 编译选项会在生成的二进制文件中附带调试信息,建议限制带有调试信息的用户程序的访问权限,确保只有授权人员可以访问该二进制文件。
- 若不使用llvm-symbolizer组件提供的相关功能,输入msProf的程序编译时不包含-g即可,msProf工具则不会调用llvm-symbolizer组件的相关功能。
- 若参考msOpGen工具创建的算子工程,需编辑算子工程op_kernel目录下的CMakeLists.txt文件,可参考创建算子工程。
1
add_ops_compile_options(ALL OPTIONS -g)
- 若参考完整样例,以LINK为例,需在样例工程目录下的“cmake/npu_lib.cmake”文件中新增以下代码。
- 下载代码样例时,需执行以下命令指定分支版本。
git clone https://gitee.com/ascend/samples.git -b v0.2-8.0.0.beta1
ascendc_compile_options(ascendc_kernels_${RUN_MODE} PRIVATE -g -O2 )
- 下载代码样例时,需执行以下命令指定分支版本。
- 使用msProf工具对PyTorch脚本的算子进行仿真调优时,不支持Python内置的print函数打印device侧上的变量和值。
Atlas 推理系列产品 使用msProf工具进行算子仿真调优时,需将davinci_mini.spec和davinci_vec_core.spec文件中的flush_level参数修改为info级,也就是将文件中的flush_level = "3"修改为flush_level = "2"。davinci_mini.spec和davinci_vec_core.spec文件的路径为${INSTALL_DIR}/tools/simulator/Ascendxxxyy/lib/ davinci_mini.spec和${INSTALL_DIR}/tools/simulator/Ascendxxxyy/lib/davinci_vec_core.spec。
- 8.0.RC2及后续版本的CANN支持了
Atlas A2 训练系列产品/Atlas 800I A2 推理产品 仿真器的配置线程提速以及L2Cache仿真增强,可以参照如下配置进行修改:- 可以通过配置config_stars.json实现仿真器多线程提速,config_stars.json文件的路径为
- 可以通过配置config.json实现L2Cache仿真增强,config.json文件的路径为
Atlas A2 训练系列产品/Atlas 800I A2 推理产品 和Atlas 推理系列产品 使用msProf工具进行算子仿真调优时,需将config.json文件中的flush_level参数修改为info级,也就是将文件中的flush_level = "3"修改为flush_level = "2"。config.json文件的路径为${INSTALL_DIR}/tools/simulator/Ascendxxxyy/lib/config.json。
启动工具
- 请参见msprof op的操作步骤使能msProf工具的上板调优功能。
- 请先参见msprof op simulator配置配置部分仿真调优的功能,然后根据msprof op simulator的操作步骤使能msProf工具的仿真调优功能。
当前msProf不支持-O0编译选项。
父主题: 算子调优(msProf)