基于算子样例
命令行场景下,开发者可以直接基于Ascend开源社区中提供的自定义算子样例工程进行修改,追加自定义算子。
样例获取
单击Gitee或Github,进入Ascend samples开源仓,参见README中的“版本说明”下载配套版本的sample包,从“cplusplus/level1_single_api/4_op_dev/1_custom_op”目录中获取样例。

如无权限获取代码,请联系技术支持申请加入“Ascend”组织。
目录结构介绍
算子工程目录结构如下所示,请基于如下规则在对应目录下进行算子交付件的开发:
├── cpukernel │ ├── impl //存放算子实现文件xx.h与xx.cc │ ├── op_info_cfg │ ├── aicpu_kernel │ ├── xx.ini //算子信息库定义文件xx.ini ├── framework │ ├── xx_plugin //存放算子适配插件实现文件xx.cc ├── op_proto //存放原型定义文件xx.h与xx.cc

- 若开发者需要自定义多个AI CPU算子,需要在同一算子工程中进行实现,对应实现文件按照如上规则进行存放,并将所有自定义算子在同一工程中同时进行编译,将所有AI CPU自定义算子的实现文件编译成一个动态库文件。
编译方法请参见算子工程编译。
- 若开发者需要同时开发AI CPU算子与TBE算子,也需要在同一算子工程中进行实现和编译,关于TBE算子的开发,请参见《TBE自定义算子开发指南》。
父主题: 工程创建