From 534fdeaabbf3052a133e366f17634e5dd8c26498 Mon Sep 17 00:00:00 2001 From: cfRod Date: Thu, 25 Jun 2020 18:12:25 +0100 Subject: [ONCPUML-96] FP16 support for 2D decomposition at high core counts. Added changes to gemm_fp16 to pick gemm interleaved pretransposed 2D for hgemm_24x8 and sgemm_12x8. Also added the change for scheduling hints based on datatype F16. Signed-off-by: cfRod Change-Id: Idd754cf14b47d00a70eab79bbb5ee3ecaf77450f Reviewed-on: https://review.mlplatform.org/c/ml/ComputeLibrary/+/3477 Tested-by: Arm Jenkins Reviewed-by: Gian Marco Iodice Comments-Addressed: Arm Jenkins --- src/runtime/NEON/functions/NEGEMMAssemblyDispatch.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/runtime/NEON/functions/NEGEMMAssemblyDispatch.cpp') diff --git a/src/runtime/NEON/functions/NEGEMMAssemblyDispatch.cpp b/src/runtime/NEON/functions/NEGEMMAssemblyDispatch.cpp index 19a8374bc9..b09ea2ec57 100644 --- a/src/runtime/NEON/functions/NEGEMMAssemblyDispatch.cpp +++ b/src/runtime/NEON/functions/NEGEMMAssemblyDispatch.cpp @@ -438,7 +438,7 @@ void Fallback::run() const int granule_threshold = 200; scheduling_hint = IScheduler::Hints(Window::DimX, IScheduler::StrategyHint::DYNAMIC, granule_threshold); } - else if(_kernel_info.method == arm_gemm::GemmMethod::GEMM_INTERLEAVED_2D && _d->info()->data_type() == DataType::F32) + else if(_kernel_info.method == arm_gemm::GemmMethod::GEMM_INTERLEAVED_2D && (_d->info()->data_type() == DataType::F32 || _d->info()->data_type() == DataType::F16)) { //GEMM_INTERLEAVED supports 2D parallelism, IScheduler::split_dimensions_all signals to parallelise over all window dimensions const int granule_threshold = 200; -- cgit v1.2.1