mstx接口是MindStudio提供的一个性能分析接口,它允许用户在应用程序中插入特定的标记,以便在性能分析时能够更精确地定位关键代码区域,具体请参见表1。msProf工具允许用户通过mstx接口实现特定算子调优的功能,使用mstx接口可以自定义采集代码段范围内或指定关键函数的开始和结束时间点,并识别关键函数或计算API等信息,对性能问题快速定界。
默认情况下mstx接口是不使能的。若用户在应用程序中调用mstx接口后,会根据具体使用场景使能mstx打点功能。例如使用msProf工具进行命令行采集时,可配置--mstx=on使能用户代码程序中使用的mstx API,或通过--mstx-include来用户指定的mstx API,具体请参见命令汇总。
# Header path include_directories( ... ${CUST_PKG_PATH}/include ) ... target_link_libraries( ... dl )
... #include "mstx/ms_tools_ext_h" ...
${INSTALL_DIR}请替换为CANN软件安装后文件存储路径。若安装的Ascend-cann-toolkit软件包,以root安装举例,则安装后文件存储路径为:/usr/local/Ascend/ascend-toolkit/latest。
接口名称 |
接口说明 |
msProf工具支持情况 |
---|---|---|
mstxMarkA |
标识瞬时事件。 |
不支持。 |
mstxRangeStartA |
标识时间段事件的开始。 |
支持。 |
mstxRangeEnd |
标识时间段事件的结束。 |
支持。 |
接口名称 |
接口说明 |
msProf工具支持情况 |
---|---|---|
mstxMark |
标识瞬时事件。 |
不支持。 |
mstx.range_start |
标识时间段事件的开始。 |
支持。 |
mstx.range_end |
标识时间段事件的结束。 |
支持。 |