Model仿真打点
功能介绍
算子进行CAModel仿真时,可对算子任意运行阶段进行打点,从而分析不同指令的流水图,以便进一步性能调优。
使用方法
- 先在Kernel代码中的目标指令位置分别打上TRACE_START/TRACE_STOP,示例如下,起始/终止接口的说明详见Trace接口说明。
TRACE_START(0x1); DataCopy(zGm, zLocal, this->totalLength); TRACE_STOP(0x1);
- 参考CAModel性能仿真中的命令行或API方式,执行算子仿真流程。
- 在CAModel仿真结果trace图上查看打点结果。
如图1所示,其中USER_DEFINE_1_DELAY表示DataCopy指令下发到指令开始执行的时间,USER_DEFINE_1表示指令执行的时间。
Trace接口说明
函数原型 |
#define TRACE_START(apid) |
|
函数功能 |
起始位置打点。 |
|
参数(IN) |
apid |
当前预留了十个用户自定义的类型:
|
参数(OUT) |
NA |
- |
返回值 |
NA |
- |
使用约束 |
|
|
调用示例 |
TRACE_START(0x2); Add(zLocal, xLocal, yLocal, dataSize); TRACE_STOP(0x2); |
函数原型 |
#define TRACE_STOP(apid) |
|
函数功能 |
终止位置打点。 |
|
参数(IN) |
apid |
取值需与TRACE_START接口参数取值保持一致,否则影响打点结果。 |
参数(OUT) |
None |
- |
返回值 |
NA |
- |
使用约束 |
|
|
调用示例 |
TRACE_START(0x2); Add(zLocal, xLocal, yLocal, dataSize); TRACE_STOP(0x2); |
父主题: Simulator性能仿真功能