算子接口类。
class Operation { public: Operation() = default; virtual ~Operation() = default; virtual std::string GetName() const = 0; virtual Status InferShape(const SVector<TensorDesc> &inTensorDescs, SVector<TensorDesc> &outTensorDescs) const = 0; virtual uint32_t GetInputNum() const = 0; virtual uint32_t GetOutputNum() const = 0; virtual Status Setup(const VariantPack &variantPack, uint64_t &workspaceSize, Context *context) = 0; virtual Status Execute(const VariantPack &variantPack, uint8_t *workspace, uint64_t workspaceSize, Context *context) = 0; };
成员名称 |
描述 |
---|---|
GetName |
获取op name。 |
InferShape |
根据输入inTensor信息推导出输出outTensor信息。 |
GetInputNum |
获取Op/GraphOp输入Tensor个数接口。 |
GetOutputNum |
获取Op/GraphOp输出Tensor个数接口。 |
Setup |
配置Op/GraphOp处理及获取workspace大小接口。 |
Execute |
Op/GraphOp执行接口。 |