Compute Library
18.05
|
Interface for the kernel to perform addition between two tensors. More...
#include <NEPixelWiseMultiplicationKernel.h>
Public Member Functions | |
const char * | name () const override |
Name of the kernel. More... | |
NEPixelWiseMultiplicationKernel () | |
Default constructor. More... | |
NEPixelWiseMultiplicationKernel (const NEPixelWiseMultiplicationKernel &)=delete | |
Prevent instances of this class from being copied (As this class contains pointers) More... | |
NEPixelWiseMultiplicationKernel & | operator= (const NEPixelWiseMultiplicationKernel &)=delete |
Prevent instances of this class from being copied (As this class contains pointers) More... | |
NEPixelWiseMultiplicationKernel (NEPixelWiseMultiplicationKernel &&)=default | |
Allow instances of this class to be moved. More... | |
NEPixelWiseMultiplicationKernel & | operator= (NEPixelWiseMultiplicationKernel &&)=default |
Allow instances of this class to be moved. More... | |
~NEPixelWiseMultiplicationKernel ()=default | |
Default destructor. More... | |
void | configure (const ITensor *input1, const ITensor *input2, ITensor *output, float scale, ConvertPolicy overflow_policy, RoundingPolicy rounding_policy) |
Initialise the kernel's input, output and border mode. More... | |
void | run (const Window &window, const ThreadInfo &info) override |
Execute the kernel on the passed window. More... | |
BorderSize | border_size () const override |
The size of the border for that kernel. More... | |
Public Member Functions inherited from ICPPKernel | |
virtual | ~ICPPKernel ()=default |
Default destructor. More... | |
Public Member Functions inherited from IKernel | |
IKernel () | |
Constructor. More... | |
virtual | ~IKernel ()=default |
Destructor. More... | |
virtual bool | is_parallelisable () const |
Indicates whether or not the kernel is parallelisable. More... | |
const Window & | window () const |
The maximum window the kernel can be executed on. More... | |
Static Public Member Functions | |
static Status | validate (const ITensorInfo *input1, const ITensorInfo *input2, const ITensorInfo *output, float scale, ConvertPolicy overflow_policy, RoundingPolicy rounding_policy) |
Static function to check if given info will lead to a valid configuration of NEPixelWiseMultiplicationKernel. More... | |
Interface for the kernel to perform addition between two tensors.
Definition at line 35 of file NEPixelWiseMultiplicationKernel.h.
Default constructor.
Referenced by NEPixelWiseMultiplicationKernel::name().
|
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.
Referenced by NEPixelWiseMultiplicationKernel::name().
|
overridevirtual |
The size of the border for that kernel.
Reimplemented from IKernel.
Referenced by NEPixelWiseMultiplicationKernel::name().
void configure | ( | const ITensor * | input1, |
const ITensor * | input2, | ||
ITensor * | output, | ||
float | scale, | ||
ConvertPolicy | overflow_policy, | ||
RoundingPolicy | rounding_policy | ||
) |
Initialise the kernel's input, output and border mode.
scale
equal to 1/255 only round to nearest even (implemented as round half up) is supported. For all other scale values only round to zero (implemented as round towards minus infinity) is supported. For QS8/QS16 scale = 1 is the only supported value.[in] | input1 | An input tensor. Data types supported: U8/QS8/QS16/S16/F16/F32 |
[in] | input2 | An input tensor. Data types supported: U8, QS8 (only if input1 is QS8), QS16 (only if input1 is QS16), S16/F16 (only if input1 is F16), F32 (only if input1 is F32). |
[out] | output | The output tensor. Data types supported: U8 (Only if both inputs are U8), QS8 (only if both inputs are QS8), QS16 (only if both inputs are QS16), S16/F16 (only if input1 is F16), F32 (only if both inputs are F32). |
[in] | scale | Scale to apply after multiplication. Scale must be positive and its value must be either 1/255 or 1/2^n where n is between 0 and 15. |
[in] | overflow_policy | Overflow policy. |
[in] | rounding_policy | Rounding policy. |
Referenced by NEPixelWiseMultiplicationKernel::name().
|
inlineoverridevirtual |
Name of the kernel.
Implements ICPPKernel.
Definition at line 38 of file NEPixelWiseMultiplicationKernel.h.
References NEPixelWiseMultiplicationKernel::border_size(), NEPixelWiseMultiplicationKernel::configure(), arm_compute::test::validation::info(), NEPixelWiseMultiplicationKernel::NEPixelWiseMultiplicationKernel(), NEPixelWiseMultiplicationKernel::operator=(), arm_compute::test::validation::rounding_policy, NEPixelWiseMultiplicationKernel::run(), arm_compute::test::validation::scale, NEPixelWiseMultiplicationKernel::validate(), IKernel::window(), and NEPixelWiseMultiplicationKernel::~NEPixelWiseMultiplicationKernel().
|
delete |
Prevent instances of this class from being copied (As this class contains pointers)
Referenced by NEPixelWiseMultiplicationKernel::name().
|
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. |
Implements ICPPKernel.
Referenced by NEPixelWiseMultiplicationKernel::name().
|
static |
Static function to check if given info will lead to a valid configuration of NEPixelWiseMultiplicationKernel.
scale
equal to 1/255 only round to nearest even (implemented as round half up) is supported. For all other scale values only round to zero (implemented as round towards minus infinity) is supported. For QS8/QS16 scale = 1 is the only supported value.[in] | input1 | An input tensor. Data types supported: U8/QS8/QS16/S16/F16/F32 |
[in] | input2 | An input tensor. Data types supported: U8, QS8 (only if input1 is QS8), QS16 (only if input1 is QS16), S16/F16 (only if input1 is F16), F32 (only if input1 is F32). |
[in] | output | The output tensor. Data types supported: U8 (Only if both inputs are U8), QS8 (only if both inputs are QS8), QS16 (only if both inputs are QS16), S16/F16 (only if input1 is F16), F32 (only if both inputs are F32). |
[in] | scale | Scale to apply after multiplication. Scale must be positive and its value must be either 1/255 or 1/2^n where n is between 0 and 15. |
[in] | overflow_policy | Overflow policy. |
[in] | rounding_policy | Rounding policy. |
Referenced by NEPixelWiseMultiplicationKernel::name().