aboutsummaryrefslogtreecommitdiff
path: root/src/gpu/cl/ClKernelLibrary.cpp
diff options
context:
space:
mode:
authorramelg01 <ramy.elgammal@arm.com>2021-11-11 10:05:00 +0000
committerGian Marco Iodice <gianmarco.iodice@arm.com>2021-11-20 17:38:07 +0000
commit9cca592c13f1e688a35698641069bcd37a525f0c (patch)
tree8f69b654c5f543d918ec5d61140af30bbadbd390 /src/gpu/cl/ClKernelLibrary.cpp
parente330fb41d85d7058f74902ce1d47b2dc00b10a52 (diff)
downloadComputeLibrary-9cca592c13f1e688a35698641069bcd37a525f0c.tar.gz
Improve start-up timer for GeMM (floating-point):
- Pass M,N,K at runtime as kernel parameters - Add a guard macro to compile only kernel of interest - Move reshpaing kernels to gemm_utils.cl - Remove the fallback reshaping kernel with Y-Padding support Resolves: COMPMID-4888 Signed-off-by: Ramy Elgammal <ramy.elgammal@arm.com> Change-Id: Ida3851326f0b77e410633271de9ecca106e37931 Reviewed-on: https://review.mlplatform.org/c/ml/ComputeLibrary/+/6662 Tested-by: Arm Jenkins <bsgcomp@arm.com> Reviewed-by: Gian Marco Iodice <gianmarco.iodice@arm.com> Comments-Addressed: Arm Jenkins <bsgcomp@arm.com>
Diffstat (limited to 'src/gpu/cl/ClKernelLibrary.cpp')
-rw-r--r--src/gpu/cl/ClKernelLibrary.cpp12
1 files changed, 8 insertions, 4 deletions
diff --git a/src/gpu/cl/ClKernelLibrary.cpp b/src/gpu/cl/ClKernelLibrary.cpp
index c47cf8ef11..f87b226a64 100644
--- a/src/gpu/cl/ClKernelLibrary.cpp
+++ b/src/gpu/cl/ClKernelLibrary.cpp
@@ -290,10 +290,10 @@ const std::map<std::string, std::string> ClKernelLibrary::_kernel_program_map =
{ "gemm_mm_reshaped_only_rhs_t_post_act_eltwise_op_act", "common/experimental/gemm_fused_post_ops/act_eltwise_op_act/gemm_mm_reshaped_only_rhs.cl" },
{ "gemm_mm_reshaped_only_rhs_t_texture_post_act_eltwise_op_act", "common/experimental/gemm_fused_post_ops/act_eltwise_op_act/gemm_mm_reshaped_only_rhs.cl" },
{ "gemm_lc_vm_f32", "common/gemm.cl" },
- { "gemm_reshape_lhs_matrix_nt", "common/gemm.cl" },
- { "gemm_reshape_lhs_matrix_t", "common/gemm.cl" },
- { "gemm_reshape_rhs_matrix_nt", "common/gemm.cl" },
- { "gemm_reshape_rhs_matrix_t", "common/gemm.cl" },
+ { "gemm_reshape_lhs_matrix_nt", "common/gemm_utils.cl" },
+ { "gemm_reshape_lhs_matrix_t", "common/gemm_utils.cl" },
+ { "gemm_reshape_rhs_matrix_nt", "common/gemm_utils.cl" },
+ { "gemm_reshape_rhs_matrix_t", "common/gemm_utils.cl" },
{ "gemmlowp_matrix_a_reduction", "common/gemmlowp.cl" },
{ "gemmlowp_matrix_a_reduction_dot8", "common/gemmlowp.cl" },
{ "gemmlowp_matrix_b_reduction", "common/gemmlowp.cl" },
@@ -590,6 +590,10 @@ const std::map<std::string, std::string> ClKernelLibrary::_program_source_map =
#include "./cl_kernels/common/gemm.clembed"
},
{
+ "common/gemm_utils.cl",
+#include "./cl_kernels/common/gemm_utils.clembed"
+ },
+ {
"common/experimental/gemm_fused_post_ops/act_eltwise_op_act/gemm_mm_native.cl",
#include "./cl_kernels/common/experimental/gemm_fused_post_ops/act_eltwise_op_act/gemm_mm_native.clembed"
},