From 3931099ea791ab96bbb43e570c468e94036196fc Mon Sep 17 00:00:00 2001 From: Megvii Engine Team Date: Fri, 7 Aug 2020 20:15:31 +0800 Subject: [PATCH] fix(dnn/test): fix nchw_nchw44 i8i8i16 benchmark GitOrigin-RevId: 6a68030fbfe181bdb9e5e2cdb10ef6cfdfe87410 --- dnn/test/arm_common/conv_bias.cpp | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/dnn/test/arm_common/conv_bias.cpp b/dnn/test/arm_common/conv_bias.cpp index dc1eebb79..2a7847621 100644 --- a/dnn/test/arm_common/conv_bias.cpp +++ b/dnn/test/arm_common/conv_bias.cpp @@ -150,6 +150,13 @@ static void benchmark_convbias(Handle* handle, std::string int_name, .set_dtype(2, dtype::Int16()) .set_dtype(4, dtype::Int16()) .set_display(false); + benchmarker_int.set_times(RUNS) + .set_dtype(0, dtype::Int8()) + .set_dtype(1, dtype::Int8()) + .set_dtype(2, dtype::Int16()) + .set_dtype(4, dtype::Int16()) + .set_display(false); + } else { benchmarker_nchw44.set_times(RUNS) .set_dtype(0, dtype::QuantizedS8(2.5)) @@ -187,7 +194,11 @@ static void benchmark_convbias(Handle* handle, std::string int_name, 1; TensorShape src({N, IC, H, W}), filter({OC, IC, FS, FS}), bias({1, OC, 1, 1}), dst({N, OC, OH, OW}); + if (is_8x8x16) { + bias = {}; + } param.format = param::ConvBias::Format::NCHW; + auto int_used = benchmarker_int.set_param(param).exec( {src, filter, bias, {}, dst}) / RUNS; @@ -203,6 +214,9 @@ static void benchmark_convbias(Handle* handle, std::string int_name, } bias = {1, OC / 4, 1, 1, 4}; + if (is_8x8x16) { + bias = {}; + } dst = {N, OC / 4, OH, OW, 4}; auto int_nchw44_used = benchmarker_nchw44.set_param(param).exec( {src, filter, bias, {}, dst}) / @@ -283,14 +297,14 @@ TEST_F(ARM_COMMON, BENCHMARK_CONVBIAS_NCHW44) { "IM2COLMATMUL:AARCH64_F32K8X12X1:192", true); benchmark_convbias(handle(), "IM2COLMATMUL:AARCH64_INT8X8X32_K4X4X16:384", "IM2COLMATMUL:AARCH64_F32K8X12X1:192", false); - benchmark_convbias(handle(), "IM2COLMATMUL:AARCH64_INT8X8X32_K4X4X16:384", + benchmark_convbias(handle(), "IM2COLMATMUL:AARCH64_INT8X8X16_K4X4X16:192", "IM2COLMATMUL:AARCH64_F32K8X12X1:192", false, true); #else benchmark_convbias(handle(), "IM2COLMATMUL:ARMV7_INT8X8X32_K4X8X8:384", "IM2COLMATMUL:ARMV7_F32:192", true); benchmark_convbias(handle(), "IM2COLMATMUL:ARMV7_INT8X8X32_K4X8X8:384", "IM2COLMATMUL:ARMV7_F32:192", false); - benchmark_convbias(handle(), "IM2COLMATMUL:ARMV7_INT8X8X32_K4X8X8:384", + benchmark_convbias(handle(), "IM2COLMATMUL:ARMV7_INT8X8X16_K4X8X8:384", "IM2COLMATMUL:ARMV7_F32:192", false, true); #endif } -- GitLab