24.02.1
|
Basic function to execute GEMMLowpQuantizeDown kernels on CL. More...
#include <ClGemmLowpOutputStage.h>
Public Member Functions | |
ClGemmLowpOutputStage ()=default | |
Constructor. More... | |
void | configure (const CLCompileContext &compile_context, const ITensorInfo *src, const ITensorInfo *bias, ITensorInfo *dst, const GEMMLowpOutputStageInfo &info) |
Initialise the kernel's inputs, output. More... | |
void | run (ITensorPack &tensors) override |
Run the kernels contained in the function. More... | |
Public Member Functions inherited from ICLOperator | |
ICLOperator (IRuntimeContext *ctx=nullptr) | |
Constructor. More... | |
ICLOperator (const ICLOperator &)=delete | |
Prevent instances of this class from being copied (As this class contains pointers) More... | |
ICLOperator (ICLOperator &&)=default | |
Default move constructor. More... | |
ICLOperator & | operator= (const ICLOperator &)=delete |
Prevent instances of this class from being copied (As this class contains pointers) More... | |
ICLOperator & | operator= (ICLOperator &&)=default |
Default move assignment operator. More... | |
void | prepare (ITensorPack &constants) override |
Prepare the function for executing. More... | |
MemoryRequirements | workspace () const override |
Return the memory requirements required by the workspace. More... | |
Public Member Functions inherited from IOperator | |
virtual | ~IOperator ()=default |
Destructor. More... | |
Static Public Member Functions | |
static Status | validate (const ITensorInfo *src, const ITensorInfo *bias, const ITensorInfo *dst, const GEMMLowpOutputStageInfo &info) |
Static function to check if given info will lead to a valid configuration. More... | |
Basic function to execute GEMMLowpQuantizeDown kernels on CL.
This function calls the following CL kernels:
Definition at line 50 of file ClGemmLowpOutputStage.h.
|
default |
Constructor.
void configure | ( | const CLCompileContext & | compile_context, |
const ITensorInfo * | src, | ||
const ITensorInfo * | bias, | ||
ITensorInfo * | dst, | ||
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] | compile_context | The compile context to be used. |
[in] | src | Source 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 src . |
[out] | dst | Destination tensor. Data type supported: QASYMM8/QASYMM8_SIGNED |
[in] | info | GEMMLowp output stage metadata. |
Definition at line 39 of file ClGemmLowpOutputStage.cpp.
References ARM_COMPUTE_ERROR, ARM_COMPUTE_ERROR_ON_NULLPTR, ARM_COMPUTE_LOG_PARAMS, bias, arm_compute::test::validation::dst, arm_compute::test::validation::info, arm_compute::QUANTIZE_DOWN, arm_compute::QUANTIZE_DOWN_FIXEDPOINT, arm_compute::QUANTIZE_DOWN_FLOAT, and arm_compute::test::validation::src.
|
overridevirtual |
Run the kernels contained in the function.
[in] | tensors | Vector that contains the tensors to operate on. |
Reimplemented from ICLOperator.
Definition at line 98 of file ClGemmLowpOutputStage.cpp.
References arm_compute::ACL_BIAS, arm_compute::ACL_DST, arm_compute::ACL_SRC, bias, arm_compute::test::validation::dst, CLScheduler::enqueue_op(), CLScheduler::get(), ITensorPack::get_const_tensor(), ITensorPack::get_tensor(), arm_compute::test::validation::pack, and arm_compute::test::validation::src.
|
static |
Static function to check if given info will lead to a valid configuration.
Similar to ClGemmLowpOutputStage::configure()
Definition at line 76 of file ClGemmLowpOutputStage.cpp.
References ARM_COMPUTE_CREATE_ERROR, ARM_COMPUTE_RETURN_ERROR_ON_DATA_TYPE_CHANNEL_NOT_IN, ARM_COMPUTE_RETURN_ERROR_ON_NULLPTR, bias, arm_compute::test::validation::dst, arm_compute::test::validation::info, arm_compute::QASYMM8, arm_compute::QASYMM8_SIGNED, arm_compute::QSYMM16, arm_compute::QUANTIZE_DOWN, arm_compute::QUANTIZE_DOWN_FIXEDPOINT, arm_compute::QUANTIZE_DOWN_FLOAT, arm_compute::RUNTIME_ERROR, arm_compute::test::validation::src, ClGemmLowpQuantizeDownInt32ScaleByFixedPointKernel::validate(), ClGemmLowpQuantizeDownInt32ScaleByFloatKernel::validate(), and ClGemmLowpQuantizeDownInt32ScaleKernel::validate().
Referenced by CLGEMMLowpOutputStage::validate().