1 // 2 // ConvolutionGroup.hpp 3 // MNN 4 // 5 // Created by MNN on 2018/08/06. 6 // Copyright © 2018, Alibaba Group Holding Limited 7 // 8 9 #ifndef ConvolutionGroupInt8_hpp 10 #define ConvolutionGroupInt8_hpp 11 12 #include "backend/cpu/compute/ConvolutionIntFactory.hpp" 13 14 namespace MNN { 15 class ConvolutionGroup : public Execution { 16 public: 17 ConvolutionGroup(Backend *b, const std::vector<std::shared_ptr<Execution>> &subConvolution); 18 virtual ~ConvolutionGroup() = default; 19 20 virtual ErrorCode onResize(const std::vector<Tensor *> &inputs, const std::vector<Tensor *> &outputs) override; 21 22 virtual ErrorCode onExecute(const std::vector<Tensor *> &inputs, const std::vector<Tensor *> &outputs) override; 23 24 private: 25 std::unique_ptr<Tensor> mInputRaw; 26 std::unique_ptr<Tensor> mOutputRaw; 27 28 std::unique_ptr<Tensor> mInputUnit; 29 std::unique_ptr<Tensor> mOutputUnit; 30 31 std::vector<Tensor *> mInputUnitWrap; 32 std::vector<Tensor *> mOutputUnitWrap; 33 std::vector<std::shared_ptr<Execution>> mSubConvolution; 34 }; 35 } // namespace MNN 36 37 #endif /* ConvolutionGroupInt8_hpp */ 38