24.02.1
|
#include <gemm_hybrid_quantized.hpp>
Public Member Functions | |
GemmHybridQuantized (GemmHybridQuantized &)=delete | |
GemmHybridQuantized & | operator= (GemmHybridQuantized &)=delete |
GemmHybridQuantized (const GemmArgs &args, const Requantize32 &qp) | |
ndrange_t | get_window_size () const override |
bool | supports_dynamic_scheduling () const override |
void | execute (const ndcoord_t &work_range, const ndcoord_t &, int threadid) override |
Main execute member fucntion. More... | |
size_t | get_working_size () const override |
void | set_working_space (void *buffer) override |
bool | B_is_pretransposed () const override |
bool | B_pretranspose_required () const override |
size_t | get_B_pretransposed_array_size () const override |
void | requantize_bias (void *in_buffer, const To *B, const int ldb, const int B_multi_stride) override |
void | pretranspose_B_array (void *in_buffer, const To *B, const int ldb, const int B_multi_stride) override |
void | set_pretransposed_B_data (void *in_buffer) override |
void | set_quantized_bias (const int32_t *bias, size_t bias_multi_stride) override |
GemmConfig | get_config () override |
Public Member Functions inherited from GemmCommon< To, Tr > | |
virtual void | set_arrays (const To *A, const int lda, const int A_batch_stride, const int A_multi_stride, const To *B, const int ldb, const int B_multi_stride, Tr *C, const int ldc, const int C_batch_stride, const int C_multi_stride, const Tr *bias, const int bias_multi_stride) |
void | set_arrays_generic (const void *A, const int lda, const int A_batch_stride, const int A_multi_stride, const void *B, const int ldb, const int B_multi_stride, void *C, const int ldc, const int C_batch_stride, const int C_multi_stride, const void *bias, const int bias_multi_stride) override |
void | pretranspose_B_array_generic (void *out, const void *in, const int row_stride, const int multi_stride) override |
virtual void | pretranspose_B_array_part (void *out, const To *in, const int row_stride, const int multi_stride, size_t, size_t) |
void | pretranspose_B_array_part_generic (void *out, const void *in, const int row_stride, const int multi_stride, size_t start, size_t end) override |
virtual void | set_indirect_parameters (size_t, const To *const *const *) |
void | set_indirect_parameters_generic (size_t sz, const void *const *const *ptr) override |
Public Member Functions inherited from IGemmCommon | |
virtual void | set_nthreads (int) |
virtual size_t | get_B_pretranspose_window_size () const |
virtual void | set_convolution_parameters (ConvolutionParameters) |
virtual | ~IGemmCommon () |
Definition at line 45 of file gemm_hybrid_quantized.hpp.
|
delete |
|
inline |
Definition at line 156 of file gemm_hybrid_quantized.hpp.
|
inlineoverridevirtual |
Reimplemented from IGemmCommon.
Definition at line 260 of file gemm_hybrid_quantized.hpp.
|
inlineoverridevirtual |
Reimplemented from IGemmCommon.
Definition at line 264 of file gemm_hybrid_quantized.hpp.
|
inlineoverridevirtual |
Main execute member fucntion.
[in] | work_range | specifies the range of work we want to be computed, total range defined by get_window_size() |
[in] | thread_locator | where are we inside of the thread space |
[in] | threadid | a unique threadid |
Implements IGemmCommon.
Definition at line 175 of file gemm_hybrid_quantized.hpp.
References arm_gemm::compute_row_sums(), NDCoordinate< N >::get_position(), NDCoordinate< N >::get_position_end(), NDRange< D >::iterator(), arm_gemm::requantize_block_32(), arm_gemm::roundup(), and strategy.
|
inlineoverridevirtual |
Reimplemented from IGemmCommon.
Definition at line 268 of file gemm_hybrid_quantized.hpp.
References arm_gemm::roundup().
|
inlineoverridevirtual |
Implements IGemmCommon.
Definition at line 318 of file gemm_hybrid_quantized.hpp.
References GemmConfig::filter, arm_gemm::GEMM_HYBRID, GemmConfig::inner_block_size, GemmConfig::method, and GemmConfig::outer_block_size.
|
inlineoverridevirtual |
Implements IGemmCommon.
Definition at line 165 of file gemm_hybrid_quantized.hpp.
References NDRange< D >::total_size().
|
inlineoverridevirtual |
Reimplemented from IGemmCommon.
Definition at line 251 of file gemm_hybrid_quantized.hpp.
|
delete |
|
inlineoverridevirtual |
Reimplemented from GemmCommon< To, Tr >.
Definition at line 280 of file gemm_hybrid_quantized.hpp.
References GemmHybridQuantized< strategy, To, Tr >::requantize_bias(), arm_gemm::roundup(), and strategy.
|
inlineoverridevirtual |
Reimplemented from GemmCommon< To, Tr >.
Definition at line 272 of file gemm_hybrid_quantized.hpp.
References arm_gemm::compute_col_sums().
Referenced by GemmHybridQuantized< strategy, To, Tr >::pretranspose_B_array().
|
inlineoverridevirtual |
Reimplemented from IGemmCommon.
Definition at line 307 of file gemm_hybrid_quantized.hpp.
|
inlineoverridevirtual |
Reimplemented from IGemmCommon.
Definition at line 313 of file gemm_hybrid_quantized.hpp.
References Requantize32::bias, bias, and Requantize32::bias_multi_stride.
|
inlineoverridevirtual |
Reimplemented from IGemmCommon.
Definition at line 255 of file gemm_hybrid_quantized.hpp.
|
inlineoverridevirtual |
Reimplemented from IGemmCommon.
Definition at line 170 of file gemm_hybrid_quantized.hpp.