PrintTimeStamp
产品支持情况
产品 |
是否支持 |
---|---|
|
√ |
|
√ |
|
x |
|
x |
|
x |
|
x |
|
x |
功能说明
提供时间戳打点功能,用于在算子Kernel代码中标记关键执行点,调用后会打印如下信息:
- descId: 用户自定义标识符,用于区分不同打点位置;
- rsv :保留值,默认为0,无需关注;
- timeStamp : 当前系统cycle数,用于计算时间差,时间换算规则可参考GetSystemCycle(ISASI);
- pcPtr:pc指针数值,若无特殊需求,用户无需关注。
打印示例如下:
1
|
descId is 65577, rsv is 0, timeStamp is 13806084506158, pcPtr is 20619064414544. |

该功能主要用于调试和性能分析,开启后会对算子性能产生一定影响,生产环境建议关闭。
默认情况下,该功能关闭,开发者可以按需通过如下方式开启打点功能。
函数原型
1
|
void PrintTimeStamp(uint32_t descId) |
参数说明
参数名 |
输入/输出 |
描述 |
---|---|---|
descId |
输入 |
用户自定义标识符(自定义数字),用于区分不同打点位置。
注意:
[0, 0xffff]是预留给Ascend C内部各个模块使用的id值,用户自定义的descId建议使用大于0xffff的数值。 |
返回值说明
无
约束说明
调用示例
1
|
AscendC::PrintTimeStamp(65577); |
打印结果如下:
1 2 3 |
opType=AddCustom, DumpHead: AIV-0, CoreType=AIV, block dim=8, total_block_num=8, block_remain_len=1047136, block_initial_space=1048576, rsv=0, magic=5aa5bccd ...// 一些框架内部的打点信息 descId is 65577, rsv is 0, timeStamp is 13806084506158, pcPtr is 20619064414544. |
父主题: 算子调测API