24.02.1
|
#include <gemm_implementation.hpp>
Public Member Functions | |
bool | do_is_supported (const GemmArgs &args, const OutputStage &os) const |
uint64_t | do_cycle_estimate (const GemmArgs &args, const OutputStage &os) const |
GemmCommon< Top, Tret > * | do_instantiate (const GemmArgs &args, const OutputStage &os) const |
GemmImplementation (const GemmImplementation &)=default | |
GemmImplementation & | operator= (const GemmImplementation &)=default |
GemmImplementation (GemmMethod m, const char *n) | |
GemmImplementation (GemmMethod m, const char *n, std::function< bool(const GemmArgs &, const OutputStage &)> is_supported, std::function< bool(const GemmArgs &, const OutputStage &)> is_recommended, std::function< GemmCommon< Top, Tret > *(const GemmArgs &, const OutputStage &)> instantiate) | |
GemmImplementation (GemmMethod m, const char *n, KernelWeightFormat kwf, std::function< bool(const GemmArgs &, const OutputStage &)> is_supported, std::function< bool(const GemmArgs &, const OutputStage &)> is_recommended, std::function< GemmCommon< Top, Tret > *(const GemmArgs &, const OutputStage &)> instantiate) | |
Static Public Member Functions | |
static GemmImplementation | with_estimate (GemmMethod m, const char *n, std::function< bool(const GemmArgs &, const OutputStage &)> is_supported, std::function< uint64_t(const GemmArgs &, const OutputStage &)> cycle_estimate, std::function< GemmCommon< Top, Tret > *(const GemmArgs &, const OutputStage &)> instantiate) |
Data Fields | |
const GemmMethod | method |
const char * | name |
const KernelWeightFormat | kernel_weight_format = KernelWeightFormat::NON_FIXED |
std::function< bool(const GemmArgs &, const OutputStage &)> | is_supported = {} |
std::function< uint64_t(const GemmArgs &, const OutputStage &)> | cycle_estimate = {} |
std::function< GemmCommon< Top, Tret > *(const GemmArgs &, const OutputStage &)> | instantiate = {} |
Definition at line 39 of file gemm_implementation.hpp.
|
default |
|
inline |
Definition at line 102 of file gemm_implementation.hpp.
|
inline |
Definition at line 104 of file gemm_implementation.hpp.
References GemmTuner::args.
|
inline |
Definition at line 111 of file gemm_implementation.hpp.
References GemmTuner::args.
|
inline |
Definition at line 75 of file gemm_implementation.hpp.
References GemmTuner::args, and GemmImplementation< Top, Tret, OutputStage >::cycle_estimate.
Referenced by arm_gemm::find_implementation(), and arm_gemm::get_compatible_kernels().
|
inline |
Definition at line 83 of file gemm_implementation.hpp.
References GemmTuner::args, and GemmImplementation< Top, Tret, OutputStage >::instantiate.
Referenced by arm_gemm::gemm(), and arm_gemm::has_opt_gemm().
|
inline |
Definition at line 47 of file gemm_implementation.hpp.
References arm_gemm::ANY, GemmTuner::args, arm_gemm::get_weight_format(), GemmImplementation< Top, Tret, OutputStage >::is_supported, GemmImplementation< Top, Tret, OutputStage >::kernel_weight_format, and arm_gemm::NON_FIXED.
|
default |
|
inlinestatic |
Definition at line 87 of file gemm_implementation.hpp.
References GemmImplementation< Top, Tret, OutputStage >::cycle_estimate, GemmImplementation< Top, Tret, OutputStage >::instantiate, and GemmImplementation< Top, Tret, OutputStage >::is_supported.
std::function<uint64_t(const GemmArgs &, const OutputStage &)> cycle_estimate = {} |
Definition at line 44 of file gemm_implementation.hpp.
Referenced by GemmImplementation< Top, Tret, OutputStage >::do_cycle_estimate(), GemmImplementation< Top, Tret, Nothing >::do_cycle_estimate(), GemmImplementation< Top, Tret, OutputStage >::with_estimate(), and GemmImplementation< Top, Tret, Nothing >::with_estimate().
std::function<GemmCommon<Top, Tret> *(const GemmArgs &, const OutputStage &)> instantiate = {} |
Definition at line 45 of file gemm_implementation.hpp.
Referenced by GemmImplementation< Top, Tret, OutputStage >::do_instantiate(), GemmImplementation< Top, Tret, Nothing >::do_instantiate(), GemmImplementation< Top, Tret, OutputStage >::with_estimate(), and GemmImplementation< Top, Tret, Nothing >::with_estimate().
std::function<bool(const GemmArgs &, const OutputStage &)> is_supported = {} |
Definition at line 43 of file gemm_implementation.hpp.
Referenced by GemmImplementation< Top, Tret, OutputStage >::do_is_supported(), GemmImplementation< Top, Tret, Nothing >::do_is_supported(), GemmImplementation< Top, Tret, OutputStage >::with_estimate(), and GemmImplementation< Top, Tret, Nothing >::with_estimate().
const KernelWeightFormat kernel_weight_format = KernelWeightFormat::NON_FIXED |
Definition at line 42 of file gemm_implementation.hpp.
Referenced by GemmImplementation< Top, Tret, OutputStage >::do_is_supported(), and GemmImplementation< Top, Tret, Nothing >::do_is_supported().
const GemmMethod method |
Definition at line 40 of file gemm_implementation.hpp.
Referenced by arm_gemm::find_implementation(), arm_gemm::get_compatible_kernels(), and arm_gemm::get_gemm_method().
const char* name |
Definition at line 41 of file gemm_implementation.hpp.
Referenced by arm_gemm::get_gemm_method().