diff options
Diffstat (limited to 'src/core/NEON/kernels/arm_gemm/kernels/a64_interleaved_bf16fp32_dot_12x8.hpp')
-rw-r--r-- | src/core/NEON/kernels/arm_gemm/kernels/a64_interleaved_bf16fp32_dot_12x8.hpp | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/core/NEON/kernels/arm_gemm/kernels/a64_interleaved_bf16fp32_dot_12x8.hpp b/src/core/NEON/kernels/arm_gemm/kernels/a64_interleaved_bf16fp32_dot_12x8.hpp index 0f6c34500d..95fed86c2f 100644 --- a/src/core/NEON/kernels/arm_gemm/kernels/a64_interleaved_bf16fp32_dot_12x8.hpp +++ b/src/core/NEON/kernels/arm_gemm/kernels/a64_interleaved_bf16fp32_dot_12x8.hpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2019 Arm Limited. + * Copyright (c) 2019-2020 Arm Limited. * * SPDX-License-Identifier: MIT * @@ -32,6 +32,7 @@ namespace arm_gemm { // Actual kernel implementations void a64_interleaved_bf16fp32_dot_12x8(const bfloat16 *, const bfloat16 *, float *, int, int, int); +void a64_interleaved_bf16fp32_dot_12x8_x1(const bfloat16 *, const bfloat16 *, float *, int, int, int); class interleaved_bf16fp32_dot_12x8 { public: @@ -61,7 +62,12 @@ public: kern_type kernel=a64_interleaved_bf16fp32_dot_12x8; - interleaved_bf16fp32_dot_12x8(const CPUInfo *ci) { UNUSED(ci); } + interleaved_bf16fp32_dot_12x8(const CPUInfo *ci) + { + if (ci->get_cpu_model() == CPUModel::X1) { + kernel = a64_interleaved_bf16fp32_dot_12x8_x1; + } + } }; } // namespace arm_gemm |