From d928735fee6baefdb74325c05d8152dd13044f32 Mon Sep 17 00:00:00 2001 From: SiCongLi Date: Wed, 3 Nov 2021 19:01:22 +0000 Subject: Add validate tests for CLConvolutionLayer and CLGEMMConvolutionLayer with post ops * Add validate tests * Restrict post ops support in ClGemmConv2d to only those that do not need im2col or col2im. In practice this means we only support post ops in conv1x1 with stride = 1, dilation = 1 and data layout = NHWC Resolves COMPMID-4435 Change-Id: I1fdf0c5d565a4624857250075ac76db35c2f383b Signed-off-by: SiCongLi Reviewed-on: https://review.mlplatform.org/c/ml/ComputeLibrary/+/6573 Reviewed-by: Gunes Bayir Comments-Addressed: Arm Jenkins Tested-by: Arm Jenkins --- src/core/CL/CLUtils.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'src/core/CL/CLUtils.cpp') diff --git a/src/core/CL/CLUtils.cpp b/src/core/CL/CLUtils.cpp index 88b31c8349..8dab8aa876 100644 --- a/src/core/CL/CLUtils.cpp +++ b/src/core/CL/CLUtils.cpp @@ -96,9 +96,9 @@ bool PostOpCLKernelUtils::are_post_op_shapes_compliant(const ITensorInfo *dst, c return false; } // NOTE: Kernel limitation: currently only the following broadcasting types are supported: - // 1. Post op arg is scalar, broadcast in both X and Y - // 2. Post op arg is of shape: Y=1, X=N, broadcast only in Y - // This means this case: Post op arg is of shape: Y=M, X=1, broadcast only in X, is NOT supported + // 1. Post op arg is scalar, broadcast in both first and second dims + // 2. Post op arg is of shape: second dim=1, first dim=N, broadcast only in second dim + // This means this case: Post op arg is of shape: second dim=M, first dim=1, broadcast only in first dim, is NOT supported if(dst->dimension(0) > 1 && dst->dimension(1) > 1 && (*tensor)->dimension(0) == 1 && (*tensor)->dimension(1) > 1) { return false; -- cgit v1.2.1