35 struct CLPixelWiseMultiplication::Impl
37 const ICLTensor *src_0{
nullptr };
38 const ICLTensor *src_1{
nullptr };
39 ICLTensor *
dst{
nullptr };
40 std::unique_ptr<opencl::ClMul> op{
nullptr };
44 : _impl(
std::make_unique<Impl>())
60 _impl->src_0 = input1;
61 _impl->src_1 = input2;
63 _impl->op = std::make_unique<opencl::ClMul>();
64 _impl->op->configure(compile_context, input1->
info(), input2->
info(), output->
info(),
scale, overflow_policy, rounding_policy, act_info);
83 struct CLComplexPixelWiseMultiplication::Impl
88 std::unique_ptr<opencl::ClComplexMul> op{
nullptr };
92 : _impl(
std::make_unique<Impl>())
106 _impl->src_0 = input1;
107 _impl->src_1 = input2;
109 _impl->op = std::make_unique<opencl::ClComplexMul>();
110 _impl->op->configure(compile_context, input1->
info(), input2->
info(), output->
info(), act_info);
125 _impl->op->run(pack);
~CLComplexPixelWiseMultiplication()
Default Destructor.
void run() override
Run the kernels contained in the function.
Basic function to run opencl::ClComplexMul.
void configure(ICLTensor *input1, ICLTensor *input2, ICLTensor *output, float scale, ConvertPolicy overflow_policy, RoundingPolicy rounding_policy, const ActivationLayerInfo &act_info=ActivationLayerInfo())
Initialise the kernel's inputs, output and convertion policy.
static CLKernelLibrary & get()
Access the KernelLibrary singleton.
Store the tensor's metadata.
CLPixelWiseMultiplication & operator=(const CLPixelWiseMultiplication &)=delete
Prevent instances of this class from being copied (As this class contains pointers) ...
Activation Layer Information class.
Copyright (c) 2017-2022 Arm Limited.
Interface to enqueue OpenCL kernels and get/set the OpenCL CommandQueue and ICLTuner.
static Status validate(const ITensorInfo *src1, const ITensorInfo *src2, const ITensorInfo *dst, float scale, ConvertPolicy overflow_policy, RoundingPolicy rounding_policy, const ActivationLayerInfo &act_info=ActivationLayerInfo())
Static function to check if given info will lead to a valid configuration.
RoundingPolicy
Rounding method.
virtual ITensorInfo * info() const =0
Interface to be implemented by the child class to return the tensor's metadata.
CLComplexPixelWiseMultiplication()
Default Constructor.
static Status validate(const ITensorInfo *input1, const ITensorInfo *input2, const ITensorInfo *output, const ActivationLayerInfo &act_info=ActivationLayerInfo())
Static function to check if given info will lead to a valid configuration of CLComplexPixelWiseMultip...
Basic function to run opencl::ClMul.
CLComplexPixelWiseMultiplication & operator=(const CLComplexPixelWiseMultiplication &)=delete
Prevent instances of this class from being copied (As this class contains pointers) ...
Interface for OpenCL tensor.
void run() override
Run the kernels contained in the function.
CLPixelWiseMultiplication()
Default Constructor.
void configure(ICLTensor *input1, ICLTensor *input2, ICLTensor *output, const ActivationLayerInfo &act_info=ActivationLayerInfo())
Initialise the kernel's inputs, output.
static Status validate(const ITensorInfo *src1, const ITensorInfo *src2, const ITensorInfo *dst, const ActivationLayerInfo &act_info=ActivationLayerInfo())
Static function to check if given info will lead to a valid configuration.
ConvertPolicy
Policy to handle integer overflow.
static Status validate(const ITensorInfo *input1, const ITensorInfo *input2, const ITensorInfo *output, float scale, ConvertPolicy overflow_policy, RoundingPolicy rounding_policy, const ActivationLayerInfo &act_info=ActivationLayerInfo())
Static function to check if given info will lead to a valid configuration of CLPixelWiseMultiplicatio...
void add_tensor(int id, ITensor *tensor)
Add tensor to the pack.
~CLPixelWiseMultiplication()
Default Destructor.