1. 概述
本文描述了MXMACA® 软件栈中mcTracer工具的使用方法。
mcTracer主要抓取MXMACA应用程序的活动事件,并将活动事件按照时间序列进行展示。
mcTracer分为两部分,分别是用于采集数据的采样端程序 mcTracer,以及用于显示活动序列的 mcTracer-Viewer。
支持抓取的数据类型包括:
MXMACA Runtime API,主要是MXMACA软件栈提供的API活动
MXMACA Kernel,运行在曦云® 系列GPU上的核函数
MCTX,自定义标签段数据
2. mcTracer
2.1. 安装
mcTracer包含在MXMACA软件包内,软件包安装完成后,mcTracer工具位于 /opt/maca/bin 目录下。
2.2. 使用
mcTracer依赖于MXMACA安装包中的 libmcToolsExt.so 动态库(默认跟随MXMACA安装)。
mcTracer是一个Linux命令行工具,遵循如下命令格式:
mcTracer [tracer options] [user program] [user program args]
其中:
tracer options
为可选参数,可选参数有:--help
:显示帮助信息--debug
:mcTracer自身的调试选项,使用后会输出mcTracer的调试信息--odname
:自定义输出文件夹名称,默认为当前路径/tracer_out_${timestamp}, ${timestamp} 为实际的时间戳--name
:自定义输出文件的文件名前缀,默认输出文件名为 tracer_out-${pid}.json, ${pid} 为实际的用户进程pid--mctx
:开启自定义标签段数据,开启后在MXMACA内的MCTX API会被追踪--attach
:使能attach模式,后跟用户程序pid,支持多次attach,使用 “Ctrl+t” 可以结束单次attach。attach模式用于用户自定义tracing用户程序区间数据,该模式需在两个会话窗口使用,一个窗口内执行用户程序,另一个窗口内执行
mcTracer --attach <pid>
有关指令, “Ctrl+t” 需在mcTracer窗口执行用于结束单次attach
user program
代表被追踪的用户执行程序。在attach模式下,无需使用该参数,在非attach模式下,该参数为必选user program args
代表被追踪的用户程序自身的参数。在attach模式下,无需使用该参数,在非attach模式下,该参数为必选
以下命令演示了一个为向量加的追踪程序,且向量的宽x高为1024x256:
mcTracer ./vectoradd -vector_width=1024 –vector_height=256
当程序执行完成后,会在当前执行路径下得到 tracer_out_${timestamp} 文件夹(若未使用 --odname
选项)。该目录内包含了mcTracer生成的数据文件 tracer_out-${pid}.json (若未使用 --name
选项)。该文件用于后续在UI客户端内进行活动显示。
2.3. 卸载
mcTracer无特殊卸载需求,卸载曦云系列GPU驱动后,mcTracer会自动卸载。
3. mcTracer-Viewer
3.1. 安装
mcTracer-Viewer包含在 win-perf-kit 工具包内,是一个Windows上的UI程序,用户解压 mcTracer-Viewer 压缩包后即可直接使用。
3.2. 使用
可直接在UI中打开 2.2 使用得到的 tracer_out-${pid}.json 文件。
下图简要说明了mcTracer-Viewer UI的使用方法:

图 3.1 mcTracer-Viewer UI使用方法
3.3. 卸载
mcTracer-Viewer为纯绿色免安装软件,删除整个 mcTracer-Viewer 文件夹,即可卸载。