310V100R001
TE自定义算子开发指导
文档版本发布日期
012019-03-25
华为技术有限公司
版权所有©华为技术有限公司2019。
保留一切权利。
非经本公司书面许可,任何单位和个人不得擅自摘抄、复制本文档内容的部分或全部,并不得以任何形式传播。
商标声明
和其他华为商标均为华为技术有限公司的商标。
本文档提及的其他所有商标或注册商标,由各自的所有人拥有。
注意您购买的产品、服务或特性等应受华为公司商业合同和条款的约束,本文档中描述的全部或部分产品、服务或特性可能不在您的购买或使用范围之内。
除非合同另有约定,华为公司对本文档内容不做任何明示或默示的声明或保证。
由于产品版本升级或其他原因,本文档内容会不定期进行更新。
除非另有约定,本文档仅作为使用指导,本文档中的所有陈述、信息和建议不构成任何明示或暗示的担保。
华为技术有限公司
地址:
深圳市龙岗区坂田华为总部办公楼邮编:518129
网址:
客户服务邮箱:support@
客户服务电话:4008302118
文档版本01(2019-03-25)
版权所有©华为技术有限公司
i
Ascend310TE自定义算子开发指导
目录
目录
1简介...................................................................................................................................................
1 2场景说明...........................................................................................................................................
2 3声明...................................................................................................................................................
3 4自定义算子开发实例.......................................................................................................................
4 4.1操作流程........................................................................................................................................................................
44.2创建TE算子开发工程.................................................................................................................................................
54.2.1直接新建算子开发工程.............................................................................................................................................
54.2.2模型转化失败进入算子开发工程...........................................................................................................................
104.3自定义算子开发..........................................................................................................................................................
134.4算子插件开发..............................................................................................................................................................
154.5编译TE算子工程.......................................................................................................................................................
194.6运行TE算子工程.......................................................................................................................................................
204.6.1构造输入数据文件...................................................................................................................................................
204.6.2配置运行参数...........................................................................................................................................................
214.6.3运行单算子...............................................................................................................................................................
254.7加载插件转换模型......................................................................................................................................................
28 5自定义算子整网络执行.................................................................................................................
31 5.1创建Mind工程............................................................................................................................................................315.2导入网络模型..............................................................................................................................................................
335.3编排流程......................................................................................................................................................................
345.4编译运行......................................................................................................................................................................
37 6算子开发参考.................................................................................................................................
39 6.1reduction算子介绍......................................................................................................................................................
396.1.1reduction算子定义...................................................................................................................................................
396.1.2reduction算子代码解析...........................................................................................................................................
406.1.2.1导入TVM模块.....................................................................................................................................................
406.1.2.2声明输入................................................................................................................................................................
406.1.2.3计算过程................................................................................................................................................................
426.1.2.4算子编译................................................................................................................................................................
426.1.3算子插件注册代码解析...........................................................................................................................................
436.2sign算子介绍...............................................................................................................................................................45 文档版本01(2019-03-25) 版权所有©华为技术有限公司 ii Ascend310TE自定义算子开发指导 目录 6.2.1sign算子定义............................................................................................................................................................456.2.2算子实现代码解析...................................................................................................................................................
466.2.2.1导入模块................................................................................................................................................................
466.2.2.2声明输入................................................................................................................................................................
466.2.2.3计算过程................................................................................................................................................................
486.2.2.4算子编译................................................................................................................................................................
49 7算子插件开发函数参考.................................................................................................................
50 7.1相关函数列表..............................................................................................................................................................
507.1.1非IR方式.................................................................................................................................................................
507.1.1.1ParseParams函数...................................................................................................................................................507.1.1.2ParseWeights函数..................................................................................................................................................517.1.1.3ConvertWeight函数...............................................................................................................................................
517.1.1.4ConvertShape函数.................................................................................................................................................527.1.1.5GetOutputDesc函数..............................................................................................................................................
527.1.1.6BuildTvmBinFile函数...........................................................................................................................................527.1.1.7算子构建函数注册宏............................................................................................................................................
537.1.1.8调用示例................................................................................................................................................................
537.1.2IR方式......................................................................................................................................................................
537.1.2.1Attr函数.................................................................................................................................................................537.1.2.2ParseParams函数...................................................................................................................................................547.1.2.3GetOutputDesc函数..............................................................................................................................................
547.1.2.4BuildTvmBinFile函数...........................................................................................................................................557.1.2.5算子参数规格注册宏............................................................................................................................................
557.1.2.6算子解析函数注册宏............................................................................................................................................
567.1.2.7算子构建函数注册宏............................................................................................................................................
567.1.2.8调用示例................................................................................................................................................................
567.1.2.8.1用户自定义类.....................................................................................................................................................
567.1.2.8.2调用Attr函数.....................................................................................................................................................577.1.2.8.3自定义ParseParams函数...................................................................................................................................577.1.2.8.4重写GetOutputDesc函数和BuildTvmBinFile函数........................................................................................587.1.2.8.5算子注册.............................................................................................................................................................
607.2框架内置算子列表......................................................................................................................................................