// // Copyright © 2017 Arm Ltd. All rights reserved. // SPDX-License-Identifier: MIT // #pragma once #include #include #include #include namespace armnn { arm_compute::Status ClDepthwiseConvolutionWorkloadValidate(const TensorInfo& input, const TensorInfo& output, const DepthwiseConvolution2dDescriptor& descriptor, const TensorInfo& weights, const Optional& biases, const ActivationDescriptor* activationDescriptor = nullptr); class ClDepthwiseConvolutionWorkload : public BaseWorkload { public: using BaseWorkload::m_Data; ClDepthwiseConvolutionWorkload(const DepthwiseConvolution2dQueueDescriptor& descriptor, const WorkloadInfo& info, const arm_compute::CLCompileContext& clCompileContext); void Execute() const override; protected: std::unique_ptr m_DepthwiseConvolutionLayer; std::unique_ptr m_KernelTensor; std::unique_ptr m_BiasTensor; void FreeUnusedTensors(); }; } //namespace armnn