ONE - On-device Neural Engine
|
#include <ConvolutionLayer.h>
Public Member Functions | |
ConvolutionLayer () | |
~ConvolutionLayer () | |
void | configure (const IPortableTensor *input, const IPortableTensor *kernel, const IPortableTensor *bias, ir::PaddingType _paddingType, const uint32_t paddingLeft, const uint32_t paddingRight, const uint32_t paddingTop, const uint32_t paddingBottom, const uint32_t strideWidth, const uint32_t strideHeight, const uint32_t dilationWidthFactor, const uint32_t dilationHeightFactor, const ir::Activation activation, IPortableTensor *output, bool is_cachable_weights) |
void | prepare () override |
void | run () override |
Public Member Functions inherited from onert::exec::IFunction | |
virtual | ~IFunction ()=default |
Protected Attributes | |
const IPortableTensor * | _input |
const IPortableTensor * | _kernel |
const IPortableTensor * | _bias |
IPortableTensor * | _output |
ir::PaddingType | _paddingType |
uint32_t | _paddingLeft |
uint32_t | _paddingTop |
uint32_t | _paddingRight |
uint32_t | _paddingBottom |
uint32_t | _strideWidth |
uint32_t | _strideHeight |
uint32_t | _dilationWidthFactor |
uint32_t | _dilationHeightFactor |
ir::Activation | _activation |
std::unique_ptr< nnfw::cker::Conv > | _conv_kernel |
std::unique_ptr< nnfw::cker::ConvHybridTempArena > | _hybrid_arena |
bool | _prepare |
bool | _is_cachable_weights |
bool | _is_hybrid |
Definition at line 46 of file ConvolutionLayer.h.
onert::backend::cpu::ops::ConvolutionLayer::ConvolutionLayer | ( | ) |
Definition at line 33 of file ConvolutionLayer.cc.
|
default |
void onert::backend::cpu::ops::ConvolutionLayer::configure | ( | const IPortableTensor * | input, |
const IPortableTensor * | kernel, | ||
const IPortableTensor * | bias, | ||
ir::PaddingType | _paddingType, | ||
const uint32_t | paddingLeft, | ||
const uint32_t | paddingRight, | ||
const uint32_t | paddingTop, | ||
const uint32_t | paddingBottom, | ||
const uint32_t | strideWidth, | ||
const uint32_t | strideHeight, | ||
const uint32_t | dilationWidthFactor, | ||
const uint32_t | dilationHeightFactor, | ||
const ir::Activation | activation, | ||
IPortableTensor * | output, | ||
bool | is_cachable_weights | ||
) |
Definition at line 197 of file ConvolutionLayer.cc.
References _activation, _bias, _dilationHeightFactor, _dilationWidthFactor, _input, _is_cachable_weights, _is_hybrid, _kernel, _output, _paddingBottom, _paddingLeft, _paddingRight, _paddingTop, _paddingType, _strideHeight, _strideWidth, and onert::backend::IPortableTensor::data_type().
|
overridevirtual |
Reimplemented from onert::exec::IFunction.
Definition at line 284 of file ConvolutionLayer.cc.
References _conv_kernel, _dilationHeightFactor, _dilationWidthFactor, _hybrid_arena, _input, _is_cachable_weights, _is_hybrid, _kernel, _output, _paddingType, _prepare, _strideHeight, _strideWidth, onert::backend::IPortableTensor::data_scale(), onert::backend::IPortableTensor::data_scales(), onert::backend::IPortableTensor::data_type(), nnfw::cker::Shape::Dims(), onert::backend::cpu::ops::getPaddingType(), onert::backend::cpu::ops::GetQuantizedConvolutionMultipliersAndShifts(), onert::backend::cpu::ops::getShape(), onert::backend::IPortableTensor::is_dynamic(), nnfw::cker::Conv::per_channel_output_multiplier(), nnfw::cker::Conv::per_channel_output_shift(), nnfw::cker::Conv::prepareF32(), and nnfw::cker::Conv::prepareQ8uPerTensor().
Referenced by run().
|
overridevirtual |
Implements onert::exec::IFunction.
Definition at line 226 of file ConvolutionLayer.cc.
References _dilationHeightFactor, _dilationWidthFactor, _input, _is_hybrid, _kernel, _output, _paddingBottom, _paddingLeft, _paddingRight, _paddingTop, _paddingType, _strideWidth, onert::ir::ExplicitPadding::bottom, onert::ir::calculatePadding(), onert::backend::IPortableTensor::data_scales(), onert::backend::IPortableTensor::data_type(), onert::backend::IPortableTensor::getShape(), onert::ir::Stride::horizontal, onert::backend::IPortableTensor::is_dynamic(), onert::ir::ExplicitPadding::left, onert::ir::Padding::param, prepare(), onert::ir::ExplicitPadding::right, onert::ir::ExplicitPadding::top, onert::ir::Padding::type, and onert::ir::Stride::vertical.
Referenced by onert::backend::train::ops::ConvolutionLayer::forward(), and package.infer.session::inference().
|
protected |
Definition at line 87 of file ConvolutionLayer.h.
Referenced by configure().
|
protected |
Definition at line 73 of file ConvolutionLayer.h.
Referenced by configure().
|
protected |
Definition at line 89 of file ConvolutionLayer.h.
Referenced by prepare().
|
protected |
Definition at line 85 of file ConvolutionLayer.h.
Referenced by configure(), onert::backend::train::ops::ConvolutionLayer::configureBackward(), prepare(), and run().
|
protected |
Definition at line 84 of file ConvolutionLayer.h.
Referenced by configure(), onert::backend::train::ops::ConvolutionLayer::configureBackward(), prepare(), and run().
|
protected |
Definition at line 90 of file ConvolutionLayer.h.
Referenced by prepare().
|
protected |
Definition at line 71 of file ConvolutionLayer.h.
Referenced by onert::backend::train::ops::ConvolutionLayer::backward(), configure(), prepare(), and run().
|
protected |
Definition at line 93 of file ConvolutionLayer.h.
Referenced by configure(), and prepare().
|
protected |
Definition at line 94 of file ConvolutionLayer.h.
Referenced by configure(), prepare(), and run().
|
protected |
Definition at line 72 of file ConvolutionLayer.h.
Referenced by configure(), prepare(), and run().
|
protected |
Definition at line 74 of file ConvolutionLayer.h.
Referenced by configure(), prepare(), and run().
|
protected |
Definition at line 80 of file ConvolutionLayer.h.
Referenced by configure(), and run().
|
protected |
Definition at line 77 of file ConvolutionLayer.h.
Referenced by configure(), and run().
|
protected |
Definition at line 79 of file ConvolutionLayer.h.
Referenced by configure(), and run().
|
protected |
Definition at line 78 of file ConvolutionLayer.h.
Referenced by configure(), and run().
|
protected |
Definition at line 76 of file ConvolutionLayer.h.
Referenced by configure(), prepare(), and run().
|
protected |
Definition at line 92 of file ConvolutionLayer.h.
Referenced by prepare().
|
protected |
Definition at line 83 of file ConvolutionLayer.h.
Referenced by configure(), and prepare().
|
protected |
Definition at line 82 of file ConvolutionLayer.h.
Referenced by configure(), prepare(), and run().