24 #ifndef ARM_COMPUTE_CLREDUCTIONOPERATION_H 25 #define ARM_COMPUTE_CLREDUCTIONOPERATION_H 38 class CLCompileContext;
39 class CLFillBorderKernel;
40 class CLReductionOperationKernel;
103 std::vector<CLTensor> _results_vector;
104 std::vector<std::unique_ptr<CLReductionOperationKernel>> _reduction_kernels_vector;
105 std::vector<std::unique_ptr<CLFillBorderKernel>> _border_handlers_vector;
107 unsigned int _num_of_stages;
108 unsigned int _reduction_axis;
110 bool _is_reshape_required;
Base class for all functions.
ReductionOperation
Available reduction operations.
Store the tensor's metadata.
Copyright (c) 2017-2021 Arm Limited.
CLReductionOperation & operator=(const CLReductionOperation &)=delete
Prevent instances of this class from being copied (As this class contains pointers) ...
void run() override
Run the kernels contained in the function.
CLReductionOperation(std::shared_ptr< IMemoryManager > memory_manager=nullptr)
Default Constructor.
static Status validate(const ITensorInfo *input, const ITensorInfo *output, unsigned int axis, ReductionOperation op, bool keep_dims=true)
Static function to check if given info will lead to a valid configuration of CLReductionOperation.
Interface for OpenCL tensor.
Perform reduction operation.
void configure(ICLTensor *input, ICLTensor *output, unsigned int axis, ReductionOperation op, bool keep_dims=true)
Set the input and output tensors.
Basic function to run opencl::kernels::ClReshapeKernel.
~CLReductionOperation()
Default Destructor.