news 2026/5/21 10:08:34

CANN/asc-devkit TRACE_START调测接口

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
CANN/asc-devkit TRACE_START调测接口

TRACE_START

【免费下载链接】asc-devkit本项目是CANN 推出的昇腾AI处理器专用的算子程序开发语言,原生支持C和C++标准规范,主要由类库和语言扩展层构成,提供多层级API,满足多维场景算子开发诉求。项目地址: https://gitcode.com/cann/asc-devkit

产品支持情况

产品

是否支持

Ascend 950PR/Ascend 950DT

Atlas A3 训练系列产品 / Atlas A3 推理系列产品

Atlas A2 训练系列产品 / Atlas A2 推理系列产品

Atlas 200I/500 A2 推理产品

Atlas 推理系列产品 AI Core

Atlas 推理系列产品 Vector Core

x

Atlas 训练系列产品

功能说明

通过CAModel进行算子性能仿真时,可对算子任意运行阶段打点,从而分析不同指令的流水图,以便进一步性能调优。

用于表示起始位置打点,一般与TRACE_STOP配套使用。

[!CAUTION]注意 该功能主要用于调试和性能分析,开启后会对算子性能产生一定影响,通常在调测阶段使用,生产环境建议关闭。 默认情况下,该功能关闭,开发者可以按需通过如下方式开启打点功能。 修改Kernel直调工程cmake目录下的npu_lib.cmake文件,在ascendc_compile_definitions命令中增加-DASCENDC_TRACE_ON编译选项,来开启打点功能。示例如下:

// 打开算子的打点功能 ascendc_compile_definitions(ascendc_kernels_${RUN_MODE} PRIVATE -DASCENDC_TRACE_ON )

函数原型

#define TRACE_START(TraceId apid) #define TRACE_START(pipe_t pipe, TraceId apid) // 该接口仅支持Ascend 950PR/Ascend 950DT

参数说明

参数名

输入/输出

描述

apid

输入

当前预留了十个用户自定义的类型:

  • 0x0:USER_DEFINE_0
  • 0x1:USER_DEFINE_1
  • 0x2:USER_DEFINE_2
  • 0x3:USER_DEFINE_3
  • 0x4:USER_DEFINE_4
  • 0x5:USER_DEFINE_5
  • 0x6:USER_DEFINE_6
  • 0x7:USER_DEFINE_7
  • 0x8:USER_DEFINE_8
  • 0x9:USER_DEFINE_9

pipe

输入

指定打点所在的pipeline类型。

返回值说明

约束说明

  • TRACE_START/TRACE_STOP需配套使用,若Trace图上未显示打点,则说明两者没有配对。
  • 不支持跨核使用,例如TRACE_START在AI Cube打点,则TRACE_STOP打点也需要在AI Cube上,不能在AI Vector上。
  • 宏支持所有的产品型号,但实际调用时需与调测工具支持的型号保持一致。
  • 仅支持Kernel直调工程,不支持自定义算子工程下开启打点功能。

调用示例

在Kernel代码中特定指令位置打上TRACE_START/TRACE_STOP:

TRACE_START(0x2); Add(zLocal, xLocal, yLocal, dataSize); TRACE_STOP(0x2);

【免费下载链接】asc-devkit本项目是CANN 推出的昇腾AI处理器专用的算子程序开发语言,原生支持C和C++标准规范,主要由类库和语言扩展层构成,提供多层级API,满足多维场景算子开发诉求。项目地址: https://gitcode.com/cann/asc-devkit

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/21 10:07:59

口腔门诊设计装修长远规划与标准

长远考虑和追求标准是口腔门诊设计装修能否成功,乃至门诊能否在未来竞争中立足的核心关键。一、 长远考虑:为未来发展预留弹性 短期思维将导致门诊很快面临发展瓶颈,而前瞻性规划则能赋予其强大的适应性与扩展能力。 1、业务可扩展性&#xf…

作者头像 李华
网站建设 2026/5/21 10:07:13

开源项目jb常见问题解决方案

开源项目jb常见问题解决方案 【免费下载链接】jb A simple and fast JSON API template engine for Ruby on Rails 项目地址: https://gitcode.com/gh_mirrors/jb/jb 项目基础介绍 jb是一个简单且快速的JSON API模板引擎,专为Ruby on Rails设计。该项目的主…

作者头像 李华
网站建设 2026/5/21 10:01:19

3步搞定专业级流程图:dagre-d3终极可视化指南

3步搞定专业级流程图:dagre-d3终极可视化指南 【免费下载链接】dagre-d3 A D3-based renderer for Dagre 项目地址: https://gitcode.com/gh_mirrors/da/dagre-d3 还在为创建复杂的流程图而头疼吗?🤔 今天我要向大家介绍一个神奇的工具…

作者头像 李华
网站建设 2026/5/21 9:58:07

Steam Deck Windows终极优化指南:免费工具解锁完整游戏体验

Steam Deck Windows终极优化指南:免费工具解锁完整游戏体验 【免费下载链接】steam-deck-tools (Windows) Steam Deck Tools - Fan, Overlay, Power Control and Steam Controller for Windows 项目地址: https://gitcode.com/gh_mirrors/st/steam-deck-tools …

作者头像 李华