24.02.1
|
Go to the documentation of this file.
24 #ifndef ACL_ARM_COMPUTE_FUNCTION_INFO_GEMMINFO_H
25 #define ACL_ARM_COMPUTE_FUNCTION_INFO_GEMMINFO_H
55 std::numeric_limits<int32_t>::
74 : _is_a_reshaped(false),
75 _is_b_reshaped(false),
76 _reshape_b_only_on_first_run(true),
77 _depth_output_gemm3d(0),
78 _reinterpret_input_as_3d(false),
79 _retain_internal_weights(false),
80 _gemmlowp_output_stage(),
82 _fp_mixed_precision(false),
83 _broadcast_bias(false),
84 _pretranspose_A(false),
85 _pretranspose_B(false),
134 _pretranspose_A(false),
147 return _is_a_reshaped;
155 return _is_b_reshaped;
165 return _reshape_b_only_on_first_run;
173 return _depth_output_gemm3d;
181 return _reinterpret_input_as_3d;
189 return _retain_internal_weights;
197 return _gemmlowp_output_stage;
213 return _fp_mixed_precision;
237 return _broadcast_bias;
245 return _pretranspose_A;
253 _pretranspose_A = flag;
263 return _pretranspose_B;
271 _pretranspose_B = flag;
279 return _activation_info;
295 return _fixed_format;
309 return _weight_format;
324 bool _reshape_b_only_on_first_run;
325 int _depth_output_gemm3d;
326 bool _reinterpret_input_as_3d;
327 bool _retain_internal_weights;
330 bool _fp_mixed_precision;
331 bool _broadcast_bias;
332 bool _pretranspose_A;
333 bool _pretranspose_B;
339 #endif // ACL_ARM_COMPUTE_FUNCTION_INFO_GEMMINFO_H
void set_fixed_format(bool fixed_format)
Set fixed-format flag.
void set_pretranspose_B(bool flag)
Set pre-transpose b flag.
bool fp_mixed_precision() const
Flag which specifies if a wider accumulator should be used.
int32_t gemmlowp_multiplier
GEMMLowp output stage multiplier used for quantizing to QASYMM8.
@ QUANTIZE_DOWN_FLOAT
Quantize using a floating point multiplication.
GEMMLowp output stage info.
int32_t gemmlowp_offset
GEMMLowp output stage offset used for quantizing to QASYMM8.
void set_activation_info(const ActivationLayerInfo &activation_info)
Set activation layer info.
GEMMLowpOutputStageType type
GEMMLowp output stage type.
bool is_a_reshaped() const
Flag which specifies if the matrix A has been reshaped.
bool is_quantized_per_channel
GEMMLowp quantized per-channel flag.
std::vector< int32_t > gemmlowp_shifts
GEMMLowp output stage multiplier used for quantizing to QASYMM8.
void set_pretranspose_A(bool flag)
Set pre-transpose A flag.
bool fixed_format() const
Flag which specifies if the GEMM operation is running fixed-format kernels.
arm_compute::WeightFormat weight_format() const
void set_fast_math(bool fast_math)
Set fast math flag.
GEMMInfo(bool is_a_reshaped, bool is_b_reshaped, bool reshape_b_only_on_first_run, int depth_output_gemm3d=0, bool reinterpret_input_as_3d=false, bool retain_internal_weights=false, GEMMLowpOutputStageInfo gemmlowp_output_stage=GEMMLowpOutputStageInfo(), bool fp_mixed_precision=false, bool fast_math=false, bool broadcast_bias=false, const ActivationLayerInfo &activation_info=ActivationLayerInfo(), bool fixed_format=false, arm_compute::WeightFormat weight_format=arm_compute::WeightFormat::UNSPECIFIED, bool pretranspose_B=false) noexcept
Constructor.
bool fast_math() const
Flag which specifies if a shorter accumulator to be used.
int32_t gemmlowp_max_bound
GEMMLowp max value used to saturate down the output result before converting back to QASYMM8.
const OutputStage & output_stage
Activation Layer Information class.
@ QUANTIZE_DOWN
Quantize using an integer multiplication.
float gemmlowp_real_multiplier
GEMMLowp output stage real multiplier used for quantizing to QASYMM8.
WeightFormat
Memory layouts for the weights tensor.
bool pretranspose_A() const
Flag which specifies whether A should be pre-transposed if supported.
bool reshape_b_only_on_first_run() const
Flag which specifies if the reshape of matrix B should executed only for the first.
void set_gemmlowp_output_stage(GEMMLowpOutputStageInfo &output_stage)
Sets GEMMLowp output stage.
std::vector< int32_t > gemmlowp_multipliers
GEMMLowp output stage multiplier used for quantizing to QASYMM8.
bool pretranspose_B() const
Flag which specifies whether b should be pre-transposed if supported.
bool is_b_reshaped() const
Flag which specifies if the matrix B has been reshaped.
void set_weight_format(arm_compute::WeightFormat weight_format)
Set weight format to be used.
GEMMLowpOutputStageType
GEMMLowp output stage type.
Copyright (c) 2017-2024 Arm Limited.
GEMMInfo() noexcept
Default constructor.
DataType output_data_type
Output tensor data type to use if the output is not initialized.
int32_t gemmlowp_shift
GEMMLowp output stage shift used for quantizing to uint8.
int32_t gemmlowp_min_bound
GEMMLowp min value used to saturate down the output result before converting back to QASYMM8.
@ UNKNOWN
Unknown data type.
bool broadcast_bias() const
Flag which specifies whether to broadcast the shape of the bias tensor.
ActivationLayerInfo activation_info() const
Activation layer to apply after the matrix multiplication.
bool retain_internal_weights() const
Flag which specifies if the weights tensor has to be retained from previous run.
@ QUANTIZE_DOWN_FIXEDPOINT
Quantize using a fixed point multiplication.
DataType
Available data types.
bool reinterpret_input_as_3d() const
Flag which specifies if the input tensor has to be reinterpreted as 3D.
GEMMLowpOutputStageInfo gemmlowp_output_stage() const
GEMMLowp output stage.
int depth_output_gemm3d() const
Depth of the output when GEMM output is reinterpreted as 3D tensor.