asc_time_stamp
产 品 支 持 情 况
- Ascend 950PR/Ascend 950DT:支 持
- Atlas A3 训 练 系 列 产 品/Atlas A3 推 理 系 列 产 品:支 持
- Atlas A2 训 练 系 列 产 品/Atlas A2 推 理 系 列 产 品:支 持
- Atlas 200I/500 A2 推 理 产 品:不 支 持
- Atlas 推 理 系 列 产 品AI Core:不 支 持
- Atlas 推 理 系 列 产 品Vector Core:不 支 持
- Atlas 训 练 系 列 产 品:不 支 持
功 能 说 明
提 供 时 间 戳 打 点 功 能,用 于 在 算 子Kernel代 码 中 标 记 关 键 执 行 点。调 用 后 会 打 印 如 下 信 息:
- descId:用 户 自 定 义 标 识 符,用 于 区 分 不 同 打 点 位 置。
- rsv:保 留 值,默 认 为0,无 需 关 注。
- timeStamp:当 前 系 统cycle数,用 于 计 算 时 间 差,时 间 换 算 规 则 可 参 考GetSystemCycle(ISASI)。
- pcPtr:pc指 针 数 值,若 无 特 殊 需 求,用 户 无 需 关 注。
- entry:算 子 开 始 执 行 的cycle数,若 无 特 殊 需 求,用 户 无 需 关 注。
打 印 示 例 如 下:
Text
descId is 11, rsv is 0, timeStamp is 815603975350485, pcPtr is 19792358553124, entry is 815603975328116.
注 意
该 功 能 主 要 用 于调 试 和 性 能 分 析,开 启 后 会 对 算 子 性 能 产 生 一 定 影 响,生 产 环 境 建 议 关 闭。 默 认 情 况 下,该 功 能 关 闭,开 发 者 可 以 按 需 通 过 增 加-DASCENDC_TIME_STAMP_ON编 译 选 项 的 方 式,开 启 打 点 功 能。
函 数 原 型
Text
__aicore__ inline void asc_time_stamp(uint32_t desc_id)
参 数 说 明
| 参 数 名 | 输 入/输 出 | 描 述 |
|---|---|---|
| desc_id | 输 入 | 用 户 自 定 义 标 识 符(自 定 义 数 字),用 于 区 分 不 同 打 点 位 置。 注 意: [0, 0xffff]是 预 留 给Ascend C内 部 各 个 模 块 使 用 的id值,用 户 自 定 义 的desc_id建 议 使 用 大 于0xffff的 数 值。 |
返 回 值 说 明
无
约 束 说 明
该 功 能 仅 用 于NPU上 板 调 试。
暂 不 支 持 算 子 入 图 场 景 的 打 印。
单 次 调 用 本 接 口 打 印 的 数 据 总 量 不 可 超 过1MB(还 包 括 少 量 框 架 需 要 的 头 尾 信 息,通 常 可 忽 略)。使 用 时 应 注 意,如 果 超 出 这 个 限 制,则 数 据 不 会 被 打 印。在 使 用 自 定 义 算 子 工 程 进 行 工 程 化 算 子 开 发 时,一 个 算 子 所 有 使 用Dump功 能 的 接 口 在 每 个 核 上Dump的 数 据 总 量 不 可 超 过1MB。请 开 发 者 自 行 控 制 待 打 印 的 内 容 数 据 量,超 出 则 不 会 打 印。
调 用 示 例
Text
asc_time_stamp(11);
打 印 结 果 如 下(Dump信 息 头 等 仅 在 使 用 自 定 义 算 子 工 程 时 才 会 打 印):
Text
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 11, rsv is 0, timeStamp is 815603975350485, pcPtr is 19792358553124, entry is 815603975328116.