MarkStamp【免费下载链接】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不支持Atlas 训练系列产品不支持功能说明推荐使用asc_mark_stamp接口进行特定位置的标记该接口同时适用于C语言和C语言编程。用户通过调用接口用于在算子执行过程中标记特定位置便于后期通过流水图分析代码执行路径与性能热点。函数原型templatepipe_t pipe, uint16_t index __aicore__ inline void MarkStamp() templatepipe_t pipe __aicore__ inline void MarkStamp(uint16_t index)参数说明参数名含义pipe指定打点所在的pipeline类型。index用户设置的打点的唯一标识id。返回值说明无约束说明芯片给index预留了12个bit可使用的取值范围为[0,256)。为方便从打点图中找到对应的代码建议不要重复使用相同的index。如果在循环中增加了一个MarkStamp指令每次执行到指令时都会输出一个打点且index是相同的。如果开发者在两个相邻的VF分别打标记由于编译器可能会对VF A和VF B做融合MarkStamp1和MarkStamp2则会被优化掉不会输出打点。调用示例mte2_opt(); //在算子执行开始处打点 MarkStampPIPE_V, 0(); //执行核心计算 vector_opt(); //在算子执行结束处打点 MarkStampPIPE_V, 1(); mte3_opt();【免费下载链接】asc-devkit本项目是CANN 推出的昇腾AI处理器专用的算子程序开发语言原生支持C和C标准规范主要由类库和语言扩展层构成提供多层级API满足多维场景算子开发诉求。项目地址: https://gitcode.com/cann/asc-devkit创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考