41 struct CLGEMMLowpOutputStage::Impl
43 const ICLTensor *
src{
nullptr };
44 const ICLTensor *
bias{
nullptr };
45 ICLTensor *
dst{
nullptr };
46 std::unique_ptr<opencl::ClGemmLowpOutputStage> op{
nullptr };
47 ITensorPack run_pack{};
51 : _impl(
std::make_unique<Impl>())
71 _impl->op = std::make_unique<opencl::ClGemmLowpOutputStage>();
72 _impl->op->configure(compile_context, input->
info(), bias !=
nullptr ? bias->
info() :
nullptr, output->
info(),
info);
83 _impl->op->run(_impl->run_pack);
~CLGEMMLowpOutputStage()
Default destructor.
Basic function to execute GEMMLowpQuantizeDown kernels on CL.
void configure(const ICLTensor *input, const ICLTensor *bias, ICLTensor *output, const GEMMLowpOutputStageInfo &info)
Initialise the kernel's inputs, output.
static CLKernelLibrary & get()
Access the KernelLibrary singleton.
Store the tensor's metadata.
Manages all the OpenCL kernels compilation and caching, provides accessors for the OpenCL Context...
CLGEMMLowpOutputStage & operator=(const CLGEMMLowpOutputStage &)=delete
Prevent instances of this class from being copied (As this class contains pointers) ...
SimpleTensor< float > src
Copyright (c) 2017-2023 Arm Limited.
static Status validate(const ITensorInfo *input, const ITensorInfo *bias, const ITensorInfo *output, const GEMMLowpOutputStageInfo &info)
Static function to check if given info will lead to a valid configuration of opencl::kernels::ClGemmL...
void run() override
Run the kernels contained in the function.
GEMMLowp output stage info.
virtual ITensorInfo * info() const =0
Interface to be implemented by the child class to return the tensor's metadata.
ScaleKernelInfo info(interpolation_policy, default_border_mode, PixelValue(), sampling_policy, false)
Interface for OpenCL tensor.
#define ARM_COMPUTE_ERROR_ON_NULLPTR(...)
static Status validate(const ITensorInfo *src, const ITensorInfo *bias, const ITensorInfo *dst, const GEMMLowpOutputStageInfo &info)
Static function to check if given info will lead to a valid configuration.