PrintTimeStamp【免费下载链接】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 训练系列产品不支持功能说明头文件路径为basic_api/kernel_operator_dump_tensor_intf.h。提供时间戳打点功能用于在算子Kernel代码中标记关键执行点。调用后会打印如下信息descId用户自定义标识符用于区分不同打点位置rsv保留值默认为0无需关注timeStamp当前系统cycle数用于计算时间差时间换算规则可参考GetSystemCycle(ISASI).md)。pcPtrpc指针数值若无特殊需求用户无需关注。entry算子开始执行的cycle数若无特殊需求用户无需关注。打印示例如下descId is 11, rsv is 0, timeStamp is 815603975350485, pcPtr is 19792358553124, entry is 815603975328116.[!CAUTION]注意 该接口主要用于调试分析开启后会对算子性能产生一定影响通常在调试阶段使用生产环境建议关闭。默认情况下该功能关闭开发者可以通过修改CMakeList.txt文件或xxx.cmake文件在target_compile_definitions命令中增加-DASCENDC_TIME_STAMP_ON来开启打点功能。示例如下target_compile_definitions({kernel_target_name} PRIVATE -DASCENDC_TIME_STAMP_ON )函数原型__aicore__ inline void PrintTimeStamp(uint32_t descId)参数说明参数名称输入/输出描述descId输入用户自定义标识符自定义数字用于区分不同打点位置。•注意[00xffff]是预留给Ascend C内部各个模块使用的id值用户自定义的descId建议使用大于0xffff的数值。返回值说明无约束说明可以参考utils目录SIMD约束下的asc_time_stamp说明。调用示例AscendC::PrintTimeStamp(65577);打印结果如下// 一些框架内部的打点信息 descId is 65577, rsv is 0, timeStamp is 13806084506158, pcPtr is 20619064414544.【免费下载链接】asc-devkit本项目是CANN 推出的昇腾AI处理器专用的算子程序开发语言原生支持C和C标准规范主要由类库和语言扩展层构成提供多层级API满足多维场景算子开发诉求。项目地址: https://gitcode.com/cann/asc-devkit创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
cann/asc-devkit Ascend C SIMD调试接口PrintTimeStamp
PrintTimeStamp【免费下载链接】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 训练系列产品不支持功能说明头文件路径为basic_api/kernel_operator_dump_tensor_intf.h。提供时间戳打点功能用于在算子Kernel代码中标记关键执行点。调用后会打印如下信息descId用户自定义标识符用于区分不同打点位置rsv保留值默认为0无需关注timeStamp当前系统cycle数用于计算时间差时间换算规则可参考GetSystemCycle(ISASI).md)。pcPtrpc指针数值若无特殊需求用户无需关注。entry算子开始执行的cycle数若无特殊需求用户无需关注。打印示例如下descId is 11, rsv is 0, timeStamp is 815603975350485, pcPtr is 19792358553124, entry is 815603975328116.[!CAUTION]注意 该接口主要用于调试分析开启后会对算子性能产生一定影响通常在调试阶段使用生产环境建议关闭。默认情况下该功能关闭开发者可以通过修改CMakeList.txt文件或xxx.cmake文件在target_compile_definitions命令中增加-DASCENDC_TIME_STAMP_ON来开启打点功能。示例如下target_compile_definitions({kernel_target_name} PRIVATE -DASCENDC_TIME_STAMP_ON )函数原型__aicore__ inline void PrintTimeStamp(uint32_t descId)参数说明参数名称输入/输出描述descId输入用户自定义标识符自定义数字用于区分不同打点位置。•注意[00xffff]是预留给Ascend C内部各个模块使用的id值用户自定义的descId建议使用大于0xffff的数值。返回值说明无约束说明可以参考utils目录SIMD约束下的asc_time_stamp说明。调用示例AscendC::PrintTimeStamp(65577);打印结果如下// 一些框架内部的打点信息 descId is 65577, rsv is 0, timeStamp is 13806084506158, pcPtr is 20619064414544.【免费下载链接】asc-devkit本项目是CANN 推出的昇腾AI处理器专用的算子程序开发语言原生支持C和C标准规范主要由类库和语言扩展层构成提供多层级API满足多维场景算子开发诉求。项目地址: https://gitcode.com/cann/asc-devkit创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考