PrintTimeStamp
产 品 支 持 情 况
功 能 说 明
头 文 件 路 径 为:"basic_api/kernel_operator_dump_tensor_intf_impl.h"。
提 供 时 间 戳 打 点 功 能,用 于 在 算 子Kernel代 码 中 标 记 关 键 执 行 点。调 用 后 会 打 印 如 下 信 息:
- descId:用 户 自 定 义 标 识 符,用 于 区 分 不 同 打 点 位 置;
- rsv:保 留 值,默 认 为0,无 需 关 注;
- timeStamp:当 前 系 统cycle数,用 于 计 算 时 间 差,时 间 换 算 规 则 可 参 考GetSystemCycle(ISASI)。
- pcPtr:pc指 针 数 值,若 无 特 殊 需 求,用 户 无 需 关 注。
- entry:算 子 开 始 执 行 的cycle数,若 无 特 殊 需 求,用 户 无 需 关 注。
打 印 示 例 如 下:
descId is 11, rsv is 0, timeStamp is 815603975350485, pcPtr is 19792358553124, entry is 815603975328116.
注 意 该 接 口 主 要 用 于 调 试 分 析,开 启 后 会 对 算 子 性 能 产 生 一 定 影 响,通 常 在 调 试 阶 段 使 用,生 产 环 境 建 议 关 闭。
默 认 情 况 下,该 功 能 关 闭,开 发 者 可 以 通 过 修 改CMakeList.txt文 件 或xxx.cmake文 件,在target_compile_definitions命 令 中 增 加DASCENDC_TIME_STAMP_ON来 开 启 打 点 功 能。示 例 如 下:
Text
// 关 闭 打 印 功 能
target_compile_definitions({kernel_target_name} PRIVATE
DASCENDC_TIME_STAMP_ON
)
函 数 原 型
C++
__aicore__ inline void PrintTimeStamp(uint32_t descId)
参 数 说 明
| 参 数 名 称 | 输 入/输 出 | 描 述 |
|---|---|---|
| descId | 输 入 | 用 户 自 定 义 标 识 符(自 定 义 数 字),用 于 区 分 不 同 打 点 位 置。 •注 意:[0,0xffff]是 预 留 给Ascend C内 部 各 个 模 块 使 用 的id值,用 户 自 定 义 的descId建 议 使 用 大 于0xffff的 数 值。 |
返 回 值 说 明
无
约 束 说 明
无
调 用 示 例
C++
AscendC::PrintTimeStamp(65577);
打 印 结 果 如 下:
// 一 些 框 架 内 部 的 打 点 信 息
descId is 65577, rsv is 0, timeStamp is 13806084506158, pcPtr is 20619064414544.