aboutsummaryrefslogtreecommitdiff
path: root/src/gpu/cl/kernels/ClMatMulLowpNativeKernel.cpp
diff options
context:
space:
mode:
authorMohammed Suhail Munshi <MohammedSuhail.Munshi@arm.com>2023-06-19 14:57:57 +0100
committerMohmun02 <MohammedSuhail.Munshi@arm.com>2023-06-26 11:34:03 +0000
commita2bb80ea7111509c24caad8629533089decef430 (patch)
treef674572e0cc705af9b66633bfcd9d6ad9e29d970 /src/gpu/cl/kernels/ClMatMulLowpNativeKernel.cpp
parentc952596e70f2fe0073029f053e329a4e930ced8c (diff)
downloadComputeLibrary-a2bb80ea7111509c24caad8629533089decef430.tar.gz
Use MatMul in fully connected layer with dynamic weights when supported
- Use MatMul kernels in FC layer when using dynamic weights without broadcasting or bias. - Fix minor typo in IClMatMulNativeKernelConfig.h Partially Resolves : [COMPMID-6193] Signed-off-by: Mohammed Suhail Munshi <MohammedSuhail.Munshi@arm.com> Change-Id: Id494062b5b4f4e75ff9714c202dde941955afa52 Reviewed-on: https://review.mlplatform.org/c/ml/ComputeLibrary/+/9797 Tested-by: Arm Jenkins <bsgcomp@arm.com> Comments-Addressed: Arm Jenkins <bsgcomp@arm.com> Reviewed-by: Gunes Bayir <gunes.bayir@arm.com> Benchmark: Arm Jenkins <bsgcomp@arm.com>
Diffstat (limited to 'src/gpu/cl/kernels/ClMatMulLowpNativeKernel.cpp')
-rw-r--r--src/gpu/cl/kernels/ClMatMulLowpNativeKernel.cpp7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/gpu/cl/kernels/ClMatMulLowpNativeKernel.cpp b/src/gpu/cl/kernels/ClMatMulLowpNativeKernel.cpp
index 9bbec908a3..38d78c618b 100644
--- a/src/gpu/cl/kernels/ClMatMulLowpNativeKernel.cpp
+++ b/src/gpu/cl/kernels/ClMatMulLowpNativeKernel.cpp
@@ -164,9 +164,10 @@ void ClMatMulLowpNativeKernel::configure(const ClCompileContext &compile_context
build_opts.add_option("-DDST_MULTIPLIER=" + support::cpp11::to_string(output_multiplier));
build_opts.add_option("-DDST_SHIFT=" + support::cpp11::to_string(output_shift));
- build_opts.add_option("-DLHS_OFFSET=" + support::cpp11::to_string(-lqinfo.offset)); // Note this is passed as negative to maintain similarity with CLDirectConv2D
- build_opts.add_option("-DRHS_OFFSET=" + support::cpp11::to_string(-rqinfo.offset)); // Note this is passed as negative to maintain similarity with CLDirectConv2D
- build_opts.add_option("-DDST_OFFSET=" + support::cpp11::to_string(dqinfo.offset)); // Passed as positive (unlike the above two)
+ // Note : Offset is not negated, unlike gemmlowp kernels
+ build_opts.add_option("-DLHS_OFFSET=" + support::cpp11::to_string(lqinfo.offset));
+ build_opts.add_option("-DRHS_OFFSET=" + support::cpp11::to_string(rqinfo.offset));
+ build_opts.add_option("-DDST_OFFSET=" + support::cpp11::to_string(dqinfo.offset)); // Passed as positive (unlike the above two)
build_opts.add_option(("-DA_VAL=" + float_to_string_with_full_precision(act_info.a())));
build_opts.add_option(("-DB_VAL=" + float_to_string_with_full_precision(act_info.b())));