24.02.1
|
CPP kernel to perform tensor upsample. More...
#include <CPPUpsampleKernel.h>
Public Member Functions | |
const char * | name () const override |
Name of the kernel. More... | |
CPPUpsampleKernel () | |
Default constructor. More... | |
CPPUpsampleKernel (const CPPUpsampleKernel &)=delete | |
Prevent instances of this class from being copied (As this class contains pointers) More... | |
CPPUpsampleKernel & | operator= (const CPPUpsampleKernel &)=delete |
Prevent instances of this class from being copied (As this class contains pointers) More... | |
CPPUpsampleKernel (CPPUpsampleKernel &&)=default | |
Allow instances of this class to be moved. More... | |
CPPUpsampleKernel & | operator= (CPPUpsampleKernel &&)=default |
Allow instances of this class to be moved. More... | |
~CPPUpsampleKernel ()=default | |
Default destructor. More... | |
void | configure (const ITensor *input, ITensor *output, const PadStrideInfo &info) |
Set the input and output of the kernel. More... | |
void | run (const Window &window, const ThreadInfo &info) override |
Execute the kernel on the passed window. More... | |
bool | is_parallelisable () const override |
Indicates whether or not the kernel is parallelisable. More... | |
Public Member Functions inherited from ICPPKernel | |
virtual | ~ICPPKernel ()=default |
Default destructor. More... | |
virtual void | run_nd (const Window &window, const ThreadInfo &info, const Window &thread_locator) |
legacy compatibility layer for implemantions which do not support thread_locator In these cases we simply narrow the interface down the legacy version More... | |
virtual void | run_op (ITensorPack &tensors, const Window &window, const ThreadInfo &info) |
Execute the kernel on the passed window. More... | |
virtual size_t | get_mws (const CPUInfo &platform, size_t thread_count) const |
Return minimum workload size of the relevant kernel. More... | |
Public Member Functions inherited from IKernel | |
IKernel () | |
Constructor. More... | |
virtual | ~IKernel ()=default |
Destructor. More... | |
virtual BorderSize | border_size () const |
The size of the border for that kernel. More... | |
const Window & | window () const |
The maximum window the kernel can be executed on. More... | |
bool | is_window_configured () const |
Function to check if the embedded window of this kernel has been configured. More... | |
Additional Inherited Members | |
Static Public Attributes inherited from ICPPKernel | |
static constexpr size_t | default_mws = 1 |
CPP kernel to perform tensor upsample.
Definition at line 36 of file CPPUpsampleKernel.h.
Default constructor.
Definition at line 35 of file CPPUpsampleKernel.cpp.
|
delete |
Prevent instances of this class from being copied (As this class contains pointers)
|
default |
Allow instances of this class to be moved.
|
default |
Default destructor.
void configure | ( | const ITensor * | input, |
ITensor * | output, | ||
const PadStrideInfo & | info | ||
) |
Set the input and output of the kernel.
[in] | input | The input tensor to upsample. Data types supported: All. |
[out] | output | The output tensor. Data types supported: same as input . |
[in] | info | Padding info. |
Definition at line 44 of file CPPUpsampleKernel.cpp.
References ARM_COMPUTE_ERROR_ON_NULLPTR, arm_compute::calculate_max_window(), ITensor::info(), arm_compute::test::validation::info, arm_compute::test::validation::input, ITensorInfo::num_dimensions(), Dimensions< T >::set_num_dimensions(), ITensorInfo::set_valid_region(), and ITensorInfo::tensor_shape().
|
overridevirtual |
Indicates whether or not the kernel is parallelisable.
If the kernel is parallelisable then the window returned by window() can be split into sub-windows which can then be run in parallel.
If the kernel is not parallelisable then only the window returned by window() can be passed to run()
Reimplemented from IKernel.
Definition at line 39 of file CPPUpsampleKernel.cpp.
|
inlineoverridevirtual |
Name of the kernel.
Implements ICPPKernel.
Definition at line 39 of file CPPUpsampleKernel.h.
|
delete |
Prevent instances of this class from being copied (As this class contains pointers)
|
default |
Allow instances of this class to be moved.
|
overridevirtual |
Execute the kernel on the passed window.
[in] | window | Region on which to execute the kernel. (Must be a region of the window returned by window()) |
[in] | info | Info about executing thread and CPU. |
Reimplemented from ICPPKernel.
Definition at line 63 of file CPPUpsampleKernel.cpp.
References ARM_COMPUTE_ERROR_ON_INVALID_SUBWINDOW, ARM_COMPUTE_ERROR_ON_UNCONFIGURED_KERNEL, ARM_COMPUTE_UNUSED, ITensor::buffer(), arm_compute::cpu::data_layout, ITensorInfo::data_layout(), ITensorInfo::data_type(), ITensorInfo::dimension(), Window::DimX, Window::DimY, Window::DimZ, ITensorInfo::element_size(), arm_compute::execute_window_loop(), arm_compute::get_data_layout_dimension_index(), arm_compute::HEIGHT, ITensor::info(), arm_compute::test::validation::info, arm_compute::NCHW, UniformQuantizationInfo::offset, PadStrideInfo::pad_bottom(), PadStrideInfo::pad_left(), PadStrideInfo::pad_right(), PadStrideInfo::pad_top(), Iterator::ptr(), arm_compute::QASYMM8, arm_compute::QASYMM8_SIGNED, ITensorInfo::quantization_info(), Window::set(), PadStrideInfo::stride(), ITensorInfo::total_size(), QuantizationInfo::uniform(), arm_compute::WIDTH, and IKernel::window().