diff options
author | Georgios Pinitas <georgios.pinitas@arm.com> | 2021-01-14 13:43:40 +0000 |
---|---|---|
committer | Georgios Pinitas <georgios.pinitas@arm.com> | 2021-01-18 12:39:30 +0000 |
commit | 33e03074c36d85de87e9032a2583b04ce8ddcd6b (patch) | |
tree | 4442ec5b5022fa5681d689e6ccf3a6423efa8a93 /src/core/NEON/kernels/arm_gemm/kernels/a64_hybrid_fp32_mla_6x16.hpp | |
parent | 8d5337ef18901f1b54d0c062ae7486bc5a4c6610 (diff) | |
download | ComputeLibrary-33e03074c36d85de87e9032a2583b04ce8ddcd6b.tar.gz |
Cycle estimate-based kernel selection for dot product quantized s8/u8 kernels
Resolves: COMPMID-3990
Signed-off-by: Georgios Pinitas <georgios.pinitas@arm.com>
Change-Id: If840c79209940535450f4ea1cbf6b0ec646a168e
Reviewed-on: https://review.mlplatform.org/c/ml/ComputeLibrary/+/4866
Tested-by: Arm Jenkins <bsgcomp@arm.com>
Reviewed-by: Michele Di Giorgio <michele.digiorgio@arm.com>
Comments-Addressed: Arm Jenkins <bsgcomp@arm.com>
Diffstat (limited to 'src/core/NEON/kernels/arm_gemm/kernels/a64_hybrid_fp32_mla_6x16.hpp')
-rw-r--r-- | src/core/NEON/kernels/arm_gemm/kernels/a64_hybrid_fp32_mla_6x16.hpp | 23 |
1 files changed, 10 insertions, 13 deletions
diff --git a/src/core/NEON/kernels/arm_gemm/kernels/a64_hybrid_fp32_mla_6x16.hpp b/src/core/NEON/kernels/arm_gemm/kernels/a64_hybrid_fp32_mla_6x16.hpp index 37d0b8f62d..b4c1ba988f 100644 --- a/src/core/NEON/kernels/arm_gemm/kernels/a64_hybrid_fp32_mla_6x16.hpp +++ b/src/core/NEON/kernels/arm_gemm/kernels/a64_hybrid_fp32_mla_6x16.hpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2019-2020 Arm Limited. + * Copyright (c) 2019-2021 Arm Limited. * * SPDX-License-Identifier: MIT * @@ -24,16 +24,16 @@ #pragma once #ifdef __aarch64__ -#include "../performance_parameters.hpp" #include "../std_transforms_fixed.hpp" +#include "../performance_parameters.hpp" #define ARGLIST \ - unsigned int, const unsigned int *, \ - IndirectInputArg<float>, \ - size_t, size_t, \ - const float *, \ - IndirectOutputArg<float>, \ - const float *, Activation, bool + unsigned int, const unsigned int *, \ + IndirectInputArg<float>, \ + size_t, size_t, \ + const float *, \ + IndirectOutputArg<float>, \ + const float *, Activation, bool namespace arm_gemm { @@ -70,24 +70,21 @@ public: return true; } + StdTransformsFixed<operand_type, result_type, 6, 16, 1> transforms = {}; + static PerformanceParameters get_performance_parameters(const CPUInfo *ci) { switch (ci->get_cpu_model()) { case CPUModel::A55r1: return { 2.287 }; - case CPUModel::A53: return { 1.43 }; - case CPUModel::A73: return { 2.56 }; - default: return { 6.667 }; } } - StdTransformsFixed<operand_type, result_type, 6, 16, 1> transforms = {}; - // Default to the generic kernel kern_type kernel=a64_hybrid_fp32_mla_6x16; |