21.05
|
Basic function to execute GEMMLowpQuantizeDown kernels. More...
#include <NEGEMMLowpOutputStage.h>
Public Member Functions | |
NEGEMMLowpOutputStage ()=default | |
Constructor. More... | |
NEGEMMLowpOutputStage (const NEGEMMLowpOutputStage &)=delete | |
Prevent instances of this class from being copied (As this class contains pointers) More... | |
NEGEMMLowpOutputStage & | operator= (const NEGEMMLowpOutputStage &)=delete |
Prevent instances of this class from being copied (As this class contains pointers) More... | |
NEGEMMLowpOutputStage (NEGEMMLowpOutputStage &&)=delete | |
Prevent instances of this class from being moved (As this class contains non movable objects) More... | |
NEGEMMLowpOutputStage & | operator= (NEGEMMLowpOutputStage &&)=delete |
Prevent instances of this class from being moved (As this class contains non movable objects) More... | |
~NEGEMMLowpOutputStage () | |
Default destructor. More... | |
void | configure (const ITensor *input, const ITensor *bias, ITensor *output, const GEMMLowpOutputStageInfo &info) |
Initialise the kernel's inputs, output. More... | |
Public Member Functions inherited from INESimpleFunctionNoBorder | |
INESimpleFunctionNoBorder (IRuntimeContext *ctx=nullptr) | |
Constructor. More... | |
INESimpleFunctionNoBorder (const INESimpleFunctionNoBorder &)=delete | |
Prevent instances of this class from being copied (As this class contains pointers) More... | |
INESimpleFunctionNoBorder (INESimpleFunctionNoBorder &&)=default | |
Default move constructor. More... | |
INESimpleFunctionNoBorder & | operator= (const INESimpleFunctionNoBorder &)=delete |
Prevent instances of this class from being copied (As this class contains pointers) More... | |
INESimpleFunctionNoBorder & | operator= (INESimpleFunctionNoBorder &&)=default |
Default move assignment operator. More... | |
~INESimpleFunctionNoBorder () | |
Default destructor. More... | |
void | run () override final |
Run the kernels contained in the function. More... | |
Public Member Functions inherited from IFunction | |
virtual | ~IFunction ()=default |
Destructor. More... | |
virtual void | prepare () |
Prepare the function for executing. More... | |
Static Public Member Functions | |
static Status | validate (const ITensorInfo *input, const ITensorInfo *bias, const ITensorInfo *output, const GEMMLowpOutputStageInfo &info) |
Static function to check if given info will lead to a valid configuration of NEGEMMLowpOutputStage. More... | |
Basic function to execute GEMMLowpQuantizeDown kernels.
This function calls the following kernels:
Definition at line 268 of file NEGEMMLowpOutputStage.h.
|
default |
Constructor.
|
delete |
Prevent instances of this class from being copied (As this class contains pointers)
|
delete |
Prevent instances of this class from being moved (As this class contains non movable objects)
|
default |
Default destructor.
void configure | ( | const ITensor * | input, |
const ITensor * | bias, | ||
ITensor * | output, | ||
const GEMMLowpOutputStageInfo & | info | ||
) |
Initialise the kernel's inputs, output.
Valid data layouts:
Valid data type configurations:
src0 | src1 | dst |
---|---|---|
S32 | S32 | QASYMM8 |
S32 | S32 | QASYMM8_SIGNED |
S32 | S32 | QSYMM16 |
[in] | input | Input tensor. Data type supported: S32 |
[in] | bias | Biases tensor. Only shared biases supported and it can be a nullptr if the biases addition is not required. Biases are 1D tensor with dimensions [OFM]. Data type supported: Same as input . |
[out] | output | Output tensor. Data type supported: Data type supported: QASYMM8/QASYMM8_SIGNED/QSYMM16 |
[in] | info | GEMMLowp output stage metadata. |
Definition at line 81 of file NEGEMMLowpOutputStage.cpp.
References ARM_COMPUTE_ERROR, ARM_COMPUTE_ERROR_ON_NULLPTR, ARM_COMPUTE_ERROR_THROW_ON, ITensor::info(), arm_compute::test::validation::info, arm_compute::test::validation::input, arm_compute::QASYMM8, arm_compute::QASYMM8_SIGNED, arm_compute::QSYMM16, arm_compute::QUANTIZE_DOWN, arm_compute::QUANTIZE_DOWN_FIXEDPOINT, and NEGEMMLowpOutputStage::validate().
Referenced by NEQLSTMLayer::configure().
|
delete |
Prevent instances of this class from being copied (As this class contains pointers)
|
delete |
Prevent instances of this class from being moved (As this class contains non movable objects)
|
static |
Static function to check if given info will lead to a valid configuration of NEGEMMLowpOutputStage.
[in] | input | Input tensor info. It is the output of NEGEMMLowpMatrixMultiplyCore function. Data type supported: S32 |
[in] | bias | Biases tensor info. Only shared biases supported and it can be a nullptr if the addition of biases is not required. Biases are 1D tensor with dimensions [OFM]. Data type supported: Same as input . |
[in] | output | Output tensor info. Data type supported: Data type supported: QASYMM8/QASYMM8_SIGNED/QSYMM16 |
[in] | info | GEMMLowp output stage metadata. |
Definition at line 147 of file NEGEMMLowpOutputStage.cpp.
References ARM_COMPUTE_CREATE_ERROR, ARM_COMPUTE_RETURN_ERROR_ON, ARM_COMPUTE_RETURN_ERROR_ON_DATA_TYPE_CHANNEL_NOT_IN, ARM_COMPUTE_RETURN_ERROR_ON_MSG, ARM_COMPUTE_RETURN_ERROR_ON_NULLPTR, ITensorInfo::data_type(), arm_compute::test::validation::info, arm_compute::test::validation::input, arm_compute::QASYMM8, arm_compute::QASYMM8_SIGNED, arm_compute::QSYMM16, arm_compute::QUANTIZE_DOWN, arm_compute::QUANTIZE_DOWN_FIXEDPOINT, arm_compute::RUNTIME_ERROR, arm_compute::UNKNOWN, NEGEMMLowpQuantizeDownInt32ScaleKernel::validate(), NEGEMMLowpQuantizeDownInt32ToInt16ScaleByFixedPointKernel::validate(), NEGEMMLowpQuantizeDownInt32ToUint8ScaleByFixedPointKernel::validate(), and NEGEMMLowpQuantizeDownInt32ToInt8ScaleByFixedPointKernel::validate().
Referenced by NEGEMMLowpOutputStage::configure(), and NEQLSTMLayer::validate().