工具概述
msdebug是用于调试在NPU侧运行的算子程序的一个工具,该工具向算子开发人员提供了在昇腾设备上调试算子的手段。调试手段包括了读写昇腾设备内存与寄存器、暂停与恢复设备运行状态等。

调试手段的操作存在一定风险,使用本调试工具即代表认可并接受该风险。
支持如下调用算子的场景:
- 基于核函数,通过使用<<<>>>内核调用符的方式调用算子。
- 通过AscendCL单算子调用:单算子API执行模式。
- Pytorch框架单算子直调的场景。
- aclnn接口调用的场景。
- 在调试前需额外指定算子动态加载路径,按照如下的方法导入算子调试信息。
export LAUNCH_KERNEL_PATH=/path_to_kernel/my_kernel.o
- 在执行run命令之前,使用image add命令导入算子调试信息。
image add my_kernel.o
- 在调试前需额外指定算子动态加载路径,按照如下的方法导入算子调试信息。
- 动态库调用的场景。
若算子代码被编译进动态库中,通过算子调用符加载,当在运行run命令前设置断点时,回显会告知暂时未找到断点位置(pending on future shared library load),动态库在程序运行后才会被加载,算子调试信息在运行run命令后完成解析,此时断点会重新更新并完成设置。
(msdebug) b my_file.cpp:55 Breakpoint 1: no locations (pending on future shared library load). WARNING: Unable to resolve breakpoint to any actual locations. (msdebug) run ... 1 location added to breakpoint 1 ...
当前msdebug工具支持的产品型号为:
Atlas A2训练系列产品
父主题: 简介