文档首页> Atlas 500应用> TE自定义算子开发指导> 创建自定义算子开发工程
更新时间:2021-03-18 GMT+08:00
分享

创建自定义算子开发工程

  1. 以DDK安装的普通用户ascend登录DDK所在服务器。
  2. 创建工作空间目录。

    mkdir $HOME/tools/projects

  3. 创建自定义工程目录。

    $ mkdir $HOME/tools/projects/customop_te

    创建算子代码目录:

    mkdir $HOME/tools/projects/customop_te/operator

    创建算子插件代码目录:

    mkdir $HOME/tools/projects/customop_te/plugin

  4. 拷贝DDK中的样例代码到算子开发工程目录下。

    • 本示例使用ddk中内置的reduction算子代码及算子插件代码进行说明如何进行自定义算子的开发,用户可自己新建相关文件进行编辑。
    • 本示例中DDK的安装路径为“$HOME/tools/che”,若实际安装路径与示例路径不一致,请自行替换示例命令中路径。
    • 将ddk中的reduction算子样例代码reduction.py和算子验证的样例数据生成脚本data_gen.py拷贝到自定义工程的算子代码目录下。

      cp -rf $HOME/tools/che/ddk/ddk/sample/customop/python/reduction.py $HOME/tools/projects/customop_te/operator/

      cp -rf $HOME/tools/che/ddk/ddk/sample/customop/python/data_gen.py $HOME/tools/projects/customop_te/operator/

    • 将ddk中的reduction算子插件样例代码文件及makefile文件拷贝到自定义工程的算子插件代码目录下。

      cp -rf $HOME/tools/che/ddk/ddk/sample/customop/customop_caffe_demo/caffe_reduction_layer.cpp $HOME/tools/projects/customop_te/plugin/

      cp -rf $HOME/tools/che/ddk/ddk/sample/customop/customop_caffe_demo/Makefile $HOME/tools/projects/customop_te/plugin/

    • 将ddk中的本示例使用的caffe网络模型文件拷贝到自定义工程目录下。

      cp -rf $HOME/tools/che/ddk/ddk/sample/customop/customop_caffe_demo/model/ $HOME/tools/projects/customop_te/

    本示例所示的自定义算子开发工程目录结构如表1所示。

    表1 目录结构

    样例目录

    文件

    说明

    customop_te/operator

    reduction.py

    reduction算子样例代码

    data_gen.py

    reduction算子样例数据生成文件

    customop_te/plugin

    caffe_reduction_layer.cpp

    reduction算子插件样例代码(需要用户修改)

    Makefile

    reduction算子插件编译规则文件(需要用户修改)

    customop_te/model

    deploy_mylenet-1.prototxt

    mylenet网络的原始模型文件

    mylenet-1.caffemodel

    mylenet网络的预训练模型文件

分享:

    相关文档

    相关产品