更新时间:2021-03-18 GMT+08:00
分享

包含头文件

应在插件实现文件的头部使用预编译命令“#include”将插件实现函数相关的头文件包含到插件实现源文件中。

#include "custom/custom_op.h"
#include "framework/omg/register.h"
#include "framework/omg/omg_types.h"
#include "proto/caffe/caffe.pb.h"
#include "operator.h"
#include "attr_value.h"
#include <memory>
#include <string>
#include <vector>
表1 头文件说明

头文件

目录

作用

custom/custom_op.h

DDK安装目录下的/include/inc/custom/custom_op.h。

包含该头文件,可调用自定义的编译函数及算子调测函数、算子校验函数。

framework/omg/register.h

DDK安装目录下的/include/inc/framework/omg/register.h。

包含该头文件,可使用算子注册类相关,调用算子注册相关的接口。

framework/omg/omg_types.h

DDK安装目录下的/include/inc/framework/omg/omg_types.h。

包含该头文件,可使用TE自定义算子信息结构体TEBinInfo。

proto/caffe/caffe.pb.h

算子插件编译时,在算子工程所在目录下生成proto/caffe/caffe.pb.h文件。

算子插件编译时,会自动编译DDK安装目录下的“/include/inc/custom/proto/caffe/caffe.proto”文件,并在算子工程所在目录下生成proto/caffe/caffe.pb.h文件供插件代码调用进行算子参数解析。

operator.h

DDK安装目录下的include/inc/graph/operator.h。

包含该头文件,可调用算子属性存取、输入/输出设置接口。

attr_value.h

DDK安装目录下的/include/inc/graph/attr_value.h。

包含该头文件,可使用AttrValue类下各数据类型。

memory

C++标准库。

包含该头文件,可使用C++标准库中的智能指针、内存分配器、临时性的申请与释放动态内存的函数、在内存上构造对象的函数等。

string

C++标准库。

包含该头文件,可使用string类构造对象并调用string相关接口。

vector

C++标准库。

包含该头文件,可使用vector类模板并调用vector相关接口。

算子插件编译前,由于工程中不存在proto/caffe/caffe.pb.h文件,所以工程中如果出现如下提示信息,请忽略。

图1 caffe.pb.h无法解析提示信息
分享:

    相关文档

    相关产品