1.课程简介
课程地址
第一章 Ascend C(旧名TIK C++)算子开发入门
https://www.hiascend.com/zh/developer/courses/detail/1627494761683783682
课程视频
https://space.bilibili.com/1190614918/channel/collectiondetail?sid=1201995
TIK2文档
在线实验>基于昇腾CANN的TIK C++算子开发
https://www.hiascend.com/zh/edu/experiment/detail/Tik_xl
示例代码
https://gitee.com/zgx950813/samples/blob/master/tik2_demo/kernel_samples/hello_world.cpp
2.前言
- 当前TIK2支持的AI处理器型号为昇腾310P AI处理器、昇腾910 AI处理器,其他型号暂不支持。
- 当前支持用户使用g++等C/C++编译器编译在cpu侧执行的TIK2算子,并使用gdb单步调试;支持用户使用CCEC编译器编译在npu侧执行的TIK2算子,实现加速计算,暂不支持加载至网络模型中进行整网验证。
3.TIK C++算子开发入门
3.1介绍
3.2核函数概念
核函数有2个限定符,具体说明如下
extern "C" __global__ __aicore__ void HelloWorld(__gm__ uint8_t* foo) {}
输入参数可统一使用__gm__ uint8_t类型,然后在函数体内再转化为实际的类型
核函数调用的3个参数,实际使用2个blockDim和Stream
使用宏__CCE_KT_TEST__来区分是在CPU模式或NPU模式下运行算子
样例代码详解
CPU模式和NPU模式下编译和运行的命令
接口介绍