23.11
|
Go to the documentation of this file.
38 : _memory_group(memory_manager),
39 _first_pass_func(memory_manager),
40 _second_pass_func(memory_manager),
65 _memory_group.
manage(&_first_pass_tensor);
66 _first_pass_func.
configure(compile_context,
input, &_first_pass_tensor, first_pass_config);
72 _second_pass_func.
configure(compile_context, &_first_pass_tensor, output, second_pass_config);
82 TensorInfo first_pass_tensor(
input->clone()->set_is_resizable(
true).reset_padding().set_num_channels(2));
97 if ((output !=
nullptr) && (output->
total_size() != 0))
110 _first_pass_func.
run();
111 _second_pass_func.
run();
void manage(IMemoryManageable *obj) override
Sets a object to be managed by the given memory group.
void run() override
Run the kernels contained in the function.
static Status validate(const ITensorInfo *input, const ITensorInfo *output, const FFT2DInfo &config)
Static function to check if given info will lead to a valid configuration of CLFFT2D.
#define ARM_COMPUTE_RETURN_ERROR_ON_MISMATCHING_SHAPES(...)
Interface for OpenCL tensor.
static CLKernelLibrary & get()
Access the KernelLibrary singleton.
#define ARM_COMPUTE_RETURN_ERROR_ON_MISMATCHING_DATA_TYPES(...)
~CLFFT2D()
Default destructor.
#define ARM_COMPUTE_RETURN_ON_ERROR(status)
Checks if a status contains an error and returns it.
#define ARM_COMPUTE_ERROR_ON_NULLPTR(...)
FFTDirection direction
Direction of the FFT.
virtual ITensorInfo * info() const =0
Interface to be implemented by the child class to return the tensor's metadata.
#define ARM_COMPUTE_ERROR_THROW_ON(status)
#define ARM_COMPUTE_RETURN_ERROR_ON_DATA_TYPE_NOT_IN(t,...)
void run() override
Run the kernels contained in the function.
unsigned int axis0
Axis to run first pass on.
Interface to enqueue OpenCL kernels and get/set the OpenCL CommandQueue and ICLTuner.
unsigned int axis
Axis to run the FFT on.
void allocate() override
Allocate size specified by TensorInfo of OpenCL memory.
CLTensorAllocator * allocator()
Return a pointer to the tensor's allocator.
Descriptor used by the FFT2D function.
Descriptor used by the FFT1D function.
Store the tensor's metadata.
FFTDirection direction
Direction of the FFT.
Memory group resources scope handling class.
Copyright (c) 2017-2023 Arm Limited.
@ F16
16-bit floating-point number
CLFFT2D(std::shared_ptr< IMemoryManager > memory_manager=nullptr)
Default Constructor.
#define ARM_COMPUTE_RETURN_ERROR_ON_NULLPTR(...)
Store the tensor's metadata.
@ F32
32-bit floating-point number
unsigned int axis1
Axis to run second pass on.
#define ARM_COMPUTE_LOG_PARAMS(...)
virtual size_t total_size() const =0
Returns the total size of the tensor in bytes.
void configure(const ICLTensor *input, ICLTensor *output, const FFT2DInfo &config)
Initialise the function's source, destinations and border mode.
static Status validate(const ITensorInfo *input, const ITensorInfo *output, const FFT1DInfo &config)
Static function to check if given info will lead to a valid configuration of CLFFT1D.
void configure(const ICLTensor *input, ICLTensor *output, const FFT1DInfo &config)
Initialise the function's source, destinations and border mode.