ArmNN
 21.05
DepthwiseConvolution2D.cpp File Reference
#include <boost/test/unit_test.hpp>
#include "ParserFlatbuffersFixture.hpp"
#include "../TfLiteParser.hpp"
#include <string>
#include <iostream>

Go to the source code of this file.

Functions

 BOOST_FIXTURE_TEST_CASE (ParseDepthwiseConv2DSame, DepthwiseConvolution2dSameFixture)
 
 BOOST_FIXTURE_TEST_CASE (ParseDepthwiseConv2DValid, DepthwiseConvolution2dValidFixture)
 
 BOOST_FIXTURE_TEST_CASE (ParseDepthwiseConv2DSameBias, DepthwiseConvolution2dSameBiasFixture)
 
 BOOST_FIXTURE_TEST_CASE (ParseDynamicDepthwiseConv2DSameBias, DynamicDepthwiseConvolution2dSameBiasFixture)
 
 BOOST_FIXTURE_TEST_CASE (ParseDepthwiseConv2DNoQuant, DepthwiseConvolution2dNoQuantFixture)
 
 BOOST_FIXTURE_TEST_CASE (ParseDepthwiseConv2DFilterNoChannelQuant, DepthwiseConvolution2dNoChannelQuantFixture)
 
 BOOST_FIXTURE_TEST_CASE (ParseDepthwiseConv2DFilterWeightsPerChannelQuant, DepthwiseConvolution2dWeightsPerChannelQuantFixture)
 
 BOOST_FIXTURE_TEST_CASE (ParseDepthwiseConv2DFilterWeightsPerChannelQuant1, DepthwiseConvolution2dWeightsPerChannelQuant1Fixture)
 
 BOOST_FIXTURE_TEST_CASE (ParseDepthwiseConv2DFilterWeightsPerChannelQuant2, DepthwiseConvolution2dWeightsPerChannelQuant2Fixture)
 
 BOOST_FIXTURE_TEST_CASE (ParseDepthwiseConv2DFilterWeightsPerChannelQuant4, DepthwiseConvolution2dWeightsPerChannelQuant4Fixture)
 
 BOOST_FIXTURE_TEST_CASE (ParseDepthwiseConv2DFilterWeightsPerChannelQuant6, DepthwiseConvolution2dWeightsPerChannelQuant6Fixture)
 
 BOOST_FIXTURE_TEST_CASE (ParseDepthwiseConv2DFilterWeightsPerChannelQuant1_1, DepthwiseConvolution2dWeightsPerChannelQuant1_1Fixture)
 
 BOOST_FIXTURE_TEST_CASE (ParseDepthwiseConv2DFilterWeightsPerChannelQuant1_2, DepthwiseConvolution2dWeightsPerChannelQuant1_2Fixture)
 
 BOOST_FIXTURE_TEST_CASE (ParseDepthwiseConv2DFilterWeightsPerChannelQuant4_1, DepthwiseConvolution2dWeightsPerChannelQuant4_1Fixture)
 
 BOOST_FIXTURE_TEST_CASE (ParseDepthwiseConv2DFilterWeightsPerChannelQuant4_2, DepthwiseConvolution2dWeightsPerChannelQuant4_2Fixture)
 
 BOOST_FIXTURE_TEST_CASE (ParseDepthwiseConv2DFilterWeightsPerChannelQuant4_5, DepthwiseConvolution2dWeightsPerChannelQuant4_5Fixture)
 
 BOOST_FIXTURE_TEST_CASE (ParseDepthwiseConv2DFilterWeightsPerChannelQuant4_3_1, DepthwiseConvolution2dWeightsPerChannelQuant4_3_1Fixture)
 

Function Documentation

◆ BOOST_FIXTURE_TEST_CASE() [1/17]

BOOST_FIXTURE_TEST_CASE ( ParseDepthwiseConv2DSame  ,
DepthwiseConvolution2dSameFixture   
)

Definition at line 134 of file DepthwiseConvolution2D.cpp.

135 {
136  RunTest<4, armnn::DataType::QAsymmU8>(
137  0,
138  { 0, 1, 2,
139  3, 4, 5,
140  6, 7, 8 },
141  // the expected values were generated using the example python implementation at
142  // https://eli.thegreenplace.net/2018/depthwise-separable-convolutions-for-machine-learning/
143  // divide the expected values by the output scale, as it is not 1.0
144  { 14/2, 35/2, 38/2,
145  57/2, 120/2, 111/2,
146  110/2, 197/2, 158/2 });
147 }

◆ BOOST_FIXTURE_TEST_CASE() [2/17]

BOOST_FIXTURE_TEST_CASE ( ParseDepthwiseConv2DValid  ,
DepthwiseConvolution2dValidFixture   
)

Definition at line 161 of file DepthwiseConvolution2D.cpp.

162 {
163  RunTest<4, armnn::DataType::QAsymmU8>(
164  0,
165  { 0, 1, 2,
166  3, 4, 5,
167  6, 7, 8 },
168  // divide the expected values by the output scale, as it is not 1.0
169  { 120/2 });
170 }

◆ BOOST_FIXTURE_TEST_CASE() [3/17]

BOOST_FIXTURE_TEST_CASE ( ParseDepthwiseConv2DSameBias  ,
DepthwiseConvolution2dSameBiasFixture   
)

Definition at line 186 of file DepthwiseConvolution2D.cpp.

187 {
188  RunTest<4, armnn::DataType::QAsymmU8>(
189  0,
190  { 0, 1, 2,
191  3, 4, 5,
192  6, 7, 8 },
193  // divide the expected values by the output scale, as it is not 1.0
194  { ( 14+10)/2, ( 35+10)/2, ( 38+10)/2,
195  ( 57+10)/2, (120+10)/2, (111+10)/2,
196  (110+10)/2, (197+10)/2, (158+10)/2 });
197 }

◆ BOOST_FIXTURE_TEST_CASE() [4/17]

BOOST_FIXTURE_TEST_CASE ( ParseDynamicDepthwiseConv2DSameBias  ,
DynamicDepthwiseConvolution2dSameBiasFixture   
)

Definition at line 213 of file DepthwiseConvolution2D.cpp.

214 {
215  RunTest<4, armnn::DataType::QAsymmU8, armnn::DataType::QAsymmU8>(0,
216  { { "inputTensor", { 0, 1, 2,
217  3, 4, 5,
218  6, 7, 8 } } },
219  { { "outputTensor", { ( 14+10)/2, ( 35+10)/2, ( 38+10)/2,
220  ( 57+10)/2, (120+10)/2, (111+10)/2,
221  (110+10)/2, (197+10)/2, (158+10)/2 } } },
222  true);
223 }

◆ BOOST_FIXTURE_TEST_CASE() [5/17]

BOOST_FIXTURE_TEST_CASE ( ParseDepthwiseConv2DNoQuant  ,
DepthwiseConvolution2dNoQuantFixture   
)

Definition at line 368 of file DepthwiseConvolution2D.cpp.

369 {
370  RunTest<4, armnn::DataType::QAsymmS8>(
371  0,
372  { 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1},
373  { 18, 14, 10, 36, 30, 24, 30, 26, 22, 27, 21, 15, 54, 45,
374  36, 45, 39, 33, 18, 14, 10, 36, 30, 24, 30, 26, 22});
375 }

◆ BOOST_FIXTURE_TEST_CASE() [6/17]

BOOST_FIXTURE_TEST_CASE ( ParseDepthwiseConv2DFilterNoChannelQuant  ,
DepthwiseConvolution2dNoChannelQuantFixture   
)

Definition at line 400 of file DepthwiseConvolution2D.cpp.

401 {
402  RunTest<4, armnn::DataType::QAsymmS8>(
403  0,
404  { 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1},
405  { 18, 14, 10, 36, 30, 24, 30, 26, 22, 27, 21, 15, 54, 45,
406  36, 45, 39, 33, 18, 14, 10, 36, 30, 24, 30, 26, 22});
407 }

◆ BOOST_FIXTURE_TEST_CASE() [7/17]

BOOST_FIXTURE_TEST_CASE ( ParseDepthwiseConv2DFilterWeightsPerChannelQuant  ,
DepthwiseConvolution2dWeightsPerChannelQuantFixture   
)

Definition at line 435 of file DepthwiseConvolution2D.cpp.

437 {
438  RunTest<4, armnn::DataType::QAsymmS8>(
439  0,
440  { 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1},
441  { 18, 14, 10, 36, 30, 24, 30, 26, 22, 27, 21, 15, 54, 45,
442  36, 45, 39, 33, 18, 14, 10, 36, 30, 24, 30, 26, 22});
443 }

◆ BOOST_FIXTURE_TEST_CASE() [8/17]

BOOST_FIXTURE_TEST_CASE ( ParseDepthwiseConv2DFilterWeightsPerChannelQuant1  ,
DepthwiseConvolution2dWeightsPerChannelQuant1Fixture   
)

Definition at line 471 of file DepthwiseConvolution2D.cpp.

473 {
474  RunTest<4, armnn::DataType::QAsymmS8>(
475  0,
476  { 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1},
477  { 18, 14, 10, 36, 30, 24, 30, 26, 22, 27, 21, 15, 54, 45,
478  36, 45, 39, 33, 18, 14, 10, 36, 30, 24, 30, 26, 22});
479 }

◆ BOOST_FIXTURE_TEST_CASE() [9/17]

BOOST_FIXTURE_TEST_CASE ( ParseDepthwiseConv2DFilterWeightsPerChannelQuant2  ,
DepthwiseConvolution2dWeightsPerChannelQuant2Fixture   
)

Definition at line 509 of file DepthwiseConvolution2D.cpp.

511 {
512  RunTest<4, armnn::DataType::QAsymmS8>(
513  0,
514  { 1,1,1,1, 1,1,1,1, 1,1,1,1, 1,1,1,1,
515  1,1,1,1, 1,1,1,1, 1,1,1,1, 1,1,1,1,
516  1,1,1,1, 1,1,1,1, 1,1,1,1, 1,1,1,1,
517  1,1,1,1, 1,1,1,1, 1,1,1,1, 1,1,1,1},
518  { 21, 26, 22, 18, 21, 26, 22, 18, 21, 26, 22, 18, 10, 17, 15, 13,
519  21, 26, 22, 18, 21, 26, 22, 18, 21, 26, 22, 18, 10, 17, 15, 13,
520  21, 26, 22, 18, 21, 26, 22, 18, 21, 26, 22, 18, 10, 17, 15, 13,
521  14, 12, 10, 8, 14, 12, 10, 8, 14, 12, 10, 8, 9, 8, 7, 6});
522 }

◆ BOOST_FIXTURE_TEST_CASE() [10/17]

BOOST_FIXTURE_TEST_CASE ( ParseDepthwiseConv2DFilterWeightsPerChannelQuant4  ,
DepthwiseConvolution2dWeightsPerChannelQuant4Fixture   
)

Definition at line 558 of file DepthwiseConvolution2D.cpp.

560 {
561  RunTest<4, armnn::DataType::QAsymmS8>(
562  0,
563  { 1,1,1,1, 1,1,1,1, 1,1,1,1, 1,1,1,1,
564  1,1,1,1, 1,1,1,1, 1,1,1,1, 1,1,1,1,
565  1,1,1,1, 1,1,1,1, 1,1,1,1, 1,1,1,1,
566  1,1,1,1, 1,1,1,1, 1,1,1,1, 1,1,1,1},
567  { 36, 32, 28, 24, 20, 16, 12, 8, 4, 36, 32, 28, 24, 20, 16, 12,
568  36, 32, 28, 24, 20, 16, 12, 8, 4, 36, 32, 28, 24, 20, 16, 12,
569  36, 32, 28, 24, 20, 16, 12, 8, 4, 36, 32, 28, 24, 20, 16, 12,
570  18, 16, 14, 12, 10, 8, 6, 4, 2, 18, 16, 14, 12, 10, 8, 6,
571  36, 32, 28, 24, 20, 16, 12, 8, 4, 36, 32, 28, 24, 20, 16, 12,
572  36, 32, 28, 24, 20, 16, 12, 8, 4, 36, 32, 28, 24, 20, 16, 12,
573  36, 32, 28, 24, 20, 16, 12, 8, 4, 36, 32, 28, 24, 20, 16, 12,
574  18, 16, 14, 12, 10, 8, 6, 4, 2, 18, 16, 14, 12, 10, 8, 6,
575  36, 32, 28, 24, 20, 16, 12, 8, 4, 36, 32, 28, 24, 20, 16, 12,
576  36, 32, 28, 24, 20, 16, 12, 8, 4, 36, 32, 28, 24, 20, 16, 12,
577  36, 32, 28, 24, 20, 16, 12, 8, 4, 36, 32, 28, 24, 20, 16, 12,
578  18, 16, 14, 12, 10, 8, 6, 4, 2, 18, 16, 14, 12, 10, 8, 6,
579  18, 16, 14, 12, 10, 8, 6, 4, 2, 18, 16, 14, 12, 10, 8, 6,
580  18, 16, 14, 12, 10, 8, 6, 4, 2, 18, 16, 14, 12, 10, 8, 6,
581  18, 16, 14, 12, 10, 8, 6, 4, 2, 18, 16, 14, 12, 10, 8, 6,
582  9, 8, 7, 6, 5, 4, 3, 2, 1, 9, 8, 7, 6, 5, 4, 3});
583 }

◆ BOOST_FIXTURE_TEST_CASE() [11/17]

BOOST_FIXTURE_TEST_CASE ( ParseDepthwiseConv2DFilterWeightsPerChannelQuant6  ,
DepthwiseConvolution2dWeightsPerChannelQuant6Fixture   
)

Definition at line 619 of file DepthwiseConvolution2D.cpp.

621 {
622  RunTest<4, armnn::DataType::QAsymmS8>(
623  0,
624  { 1,0,1,2,0,4,4,0,2,1,2,0,1,3,3,0,
625  1,2,2,3,3,4,1,1,2,4,1,3,4,2,0,2,
626  0,3,1,3,4,3,2,0,1,2,3,3,0,2,4,2,
627  1,2,1,4,3,4,1,3,1,0,2,3,1,3,2,0},
628  { 9, 7, 3, 7,12, 8,22,22,27,22,13,17,13,10, 9,17,
629  15, 9,12, 6,16,14,24,27,19,26,18,23, 9,10, 7, 3,
630  18,14, 9,11, 7, 9,21,25,17,19,10,15,13, 9, 7, 9,
631  15,16, 9, 1, 3, 9,11,12, 3,12, 9,12, 6, 2, 2, 6,
632  13, 4,10,12,11,14,28,28,17,17,14,15,15,13,13,22,
633  26,24,17, 7,10,20,33,31,23,17,17,16,16,23,20, 7,
634  17,11,16, 6,10,16,24,22,26,18,23,20,22,23,21,23,
635  12,16, 4, 4, 2, 6, 8,10,12, 8,16,16, 8, 6, 6,14,
636  14, 3,14,10,15,15,27,25,16,14, 9,11,21,19,16,24,
637  24,25,13, 7, 3,13,21,24,25,23,14,17,24,24,21,12,
638  7, 7, 3, 3,11,10,17,13,33,32,21,26,18,17,17,23,
639  3, 3, 2, 0, 2, 6, 9,13,10,20,20,24, 2, 4, 4, 8,
640  9, 4,10, 4, 2,14,22,16, 5, 7, 3, 5,13,20,20,19,
641  11,12, 6, 4, 4,12,12, 8, 9,10, 3, 6,12,18,18,15,
642  5, 4, 4, 2, 0, 6,12, 9,10,14, 6,10, 3, 6, 6,12,
643  3, 4, 1, 1, 3, 9, 9, 6, 2, 8, 6, 8, 0, 0, 0, 0});
644 }

◆ BOOST_FIXTURE_TEST_CASE() [12/17]

BOOST_FIXTURE_TEST_CASE ( ParseDepthwiseConv2DFilterWeightsPerChannelQuant1_1  ,
DepthwiseConvolution2dWeightsPerChannelQuant1_1Fixture   
)

Definition at line 675 of file DepthwiseConvolution2D.cpp.

677 {
678  RunTest<4, armnn::DataType::QAsymmS8>(
679  0,
680  { 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1},
681  { 11,11, 9,17,11,16,10, 5,10,
682  14,15,13,21,19,20,13,13,13,
683  7, 7,11,11,11,15, 6, 9,10});
684 }

◆ BOOST_FIXTURE_TEST_CASE() [13/17]

BOOST_FIXTURE_TEST_CASE ( ParseDepthwiseConv2DFilterWeightsPerChannelQuant1_2  ,
DepthwiseConvolution2dWeightsPerChannelQuant1_2Fixture   
)

Definition at line 715 of file DepthwiseConvolution2D.cpp.

717 {
718  RunTest<4, armnn::DataType::QAsymmS8>(
719  0,
720  { 3,2,0,0,4,3,0,1,2,
721  0,1,3,0,4,2,2,2,3,
722  2,4,3,2,0,4,3,4,0},
723  { 0,30,16,15,30,32, 8, 9,24,
724  20,33,28,34,48,50,18,38,35,
725  8, 8,36,20,28,33,10,28,25});
726 }

◆ BOOST_FIXTURE_TEST_CASE() [14/17]

BOOST_FIXTURE_TEST_CASE ( ParseDepthwiseConv2DFilterWeightsPerChannelQuant4_1  ,
DepthwiseConvolution2dWeightsPerChannelQuant4_1Fixture   
)

Definition at line 762 of file DepthwiseConvolution2D.cpp.

764 {
765  RunTest<4, armnn::DataType::QAsymmS8>(
766  0,
767  { 1,1,1,1, 1,1,1,1, 1,1,1,1, 1,1,1,1,
768  1,1,1,1, 1,1,1,1, 1,1,1,1, 1,1,1,1,
769  1,1,1,1, 1,1,1,1, 1,1,1,1, 1,1,1,1,
770  1,1,1,1, 1,1,1,1, 1,1,1,1, 1,1,1,1},
771  { 9, 7, 6, 4, 4, 5, 9, 9,12,11, 9,10, 9,10, 9, 8,
772  9, 7, 6, 4, 4, 5, 9, 9,12,11, 9,10, 9,10, 9, 8,
773  9, 7, 6, 4, 4, 5, 9, 9,12,11, 9,10, 9,10, 9, 8,
774  6, 7, 3, 1, 1, 3, 4, 5, 4, 6, 7, 8, 4, 3, 3, 7,
775  9, 7, 6, 4, 4, 5, 9, 9,12,11, 9,10, 9,10, 9, 8,
776  9, 7, 6, 4, 4, 5, 9, 9,12,11, 9,10, 9,10, 9, 8,
777  9, 7, 6, 4, 4, 5, 9, 9,12,11, 9,10, 9,10, 9, 8,
778  6, 7, 3, 1, 1, 3, 4, 5, 4, 6, 7, 8, 4, 3, 3, 7,
779  9, 7, 6, 4, 4, 5, 9, 9,12,11, 9,10, 9,10, 9, 8,
780  9, 7, 6, 4, 4, 5, 9, 9,12,11, 9,10, 9,10, 9, 8,
781  9, 7, 6, 4, 4, 5, 9, 9,12,11, 9,10, 9,10, 9, 8,
782  6, 7, 3, 1, 1, 3, 4, 5, 4, 6, 7, 8, 4, 3, 3, 7,
783  5, 4, 4, 2, 1, 5, 7, 5, 5, 7, 3, 5, 4, 6, 6, 5,
784  5, 4, 4, 2, 1, 5, 7, 5, 5, 7, 3, 5, 4, 6, 6, 5,
785  5, 4, 4, 2, 1, 5, 7, 5, 5, 7, 3, 5, 4, 6, 6, 5,
786  3, 4, 1, 1, 1, 3, 3, 2, 1, 4, 3, 4, 1, 2, 2, 4});
787 }

◆ BOOST_FIXTURE_TEST_CASE() [15/17]

BOOST_FIXTURE_TEST_CASE ( ParseDepthwiseConv2DFilterWeightsPerChannelQuant4_2  ,
DepthwiseConvolution2dWeightsPerChannelQuant4_2Fixture   
)

Definition at line 824 of file DepthwiseConvolution2D.cpp.

826 {
827  RunTest<4, armnn::DataType::QAsymmS8>(
828  0,
829  { 3,3,3,4, 4,4,0,0, 0,3,4,3, 0,2,2,3,
830  3,0,3,0, 0,3,2,1, 4,1,2,2, 0,0,0,4,
831  3,2,2,2, 2,1,0,4, 4,3,2,4, 3,2,0,0,
832  4,1,4,4, 1,0,4,3, 3,2,0,3, 1,1,0,2},
833  { 26,21,21, 7,12,17,28,21,20,22,25,26, 6,11,10,16,
834  16,16, 4,12, 7,18,28,27,30,20,12,14,16,19,17, 6,
835  12,12, 8, 0, 3,13,18,15,18,26,20,26,26,32,28,21,
836  0, 0, 0, 0, 2, 6, 6, 4, 2, 8, 6, 8,15,10,10,24,
837  20,21, 9, 7, 3, 6,15,16,17,22,17,22,17,18,14, 7,
838  18, 6,16,12,12,11,17,15,18,18,10,12,27,26,22,18,
839  27,28,12,10, 7, 3, 8,13, 8,12,14,16,26,24,24,24,
840  9, 9, 6, 0, 0, 0, 2, 6, 0, 0, 0, 0, 4, 8, 8,16,
841  26,24,17, 7, 2, 8,11,10,30,24,30,28,32,33,30,24,
842  20,11,16,12, 7, 9,17,13,20,14,16,18,31,36,33,29,
843  28,25,19, 9, 6,13,20,19, 2, 8, 6, 8,17,17,15,25,
844  12,15, 5, 3, 2, 6, 7, 7, 0, 0, 0, 0, 6, 2, 2, 6,
845  14,16, 7, 5, 1, 3, 3, 2,20,28,12,20,13,20,20,19,
846  9, 4,10, 4, 0, 4, 8, 6, 4,16,12,16,12,18,18,15,
847  11,12, 6, 4, 2, 8,10, 7, 0, 0, 0, 0, 9,14,14,14,
848  3, 4, 1, 1, 1, 3, 3, 2, 0, 0, 0, 0, 2, 4, 4, 8});
849 }

◆ BOOST_FIXTURE_TEST_CASE() [16/17]

BOOST_FIXTURE_TEST_CASE ( ParseDepthwiseConv2DFilterWeightsPerChannelQuant4_5  ,
DepthwiseConvolution2dWeightsPerChannelQuant4_5Fixture   
)

Definition at line 890 of file DepthwiseConvolution2D.cpp.

892 {
893  RunTest<4, armnn::DataType::QAsymmS8>(
894  0,
895  { 1,1,1,2,2,2,1,2,1,2,2,1,2,2,1,1,1,1,1,1,1,2,2,2,
896  1,2,2,2,1,1,1,2,1,1,1,1,2,1,2,1,2,1,1,2,1,2,1,1,
897  1,2,2,1,2,2,1,1,2,1,2,1,1,2,1,2},
898  { 1, 2, 3, 5, 9,11,14,16,17,19,21,24,32,36,39,43,
899  1, 2, 3, 4,11,14,17,20,22,26,29,33,34,38,42,46,
900  1, 2, 3, 5, 8,11,13,16,16,18,21,24,33,36,39,43,
901  0, 0, 1, 1, 2, 3, 3, 4, 4, 5, 5, 6,13,14,16,17,
902  1, 3, 4, 6, 6, 8,10,12,19,22,24,27,23,25,28,30,
903  1, 3, 5, 8, 7, 8,10,12,18,21,24,27,32,36,39,43,
904  1, 2, 4, 5, 8,10,13,15,12,14,16,18,30,33,37,40,
905  0, 0, 1, 1, 3, 4, 5, 7, 4, 5, 5, 6, 9,10,11,12,
906  1, 3, 5, 7,10,12,15,17,17,20,23,25,19,21,23,25,
907  2, 4, 6, 8, 7, 9,11,13,17,20,23,25,23,25,28,30,
908  1, 2, 4, 6, 9,11,14,16,15,17,20,22,28,31,35,38,
909  0, 0, 1, 1, 4, 5, 6, 7, 4, 5, 5, 6,13,14,16,17,
910  0, 0, 1, 1, 2, 3, 4, 5, 3, 4, 5, 6, 5, 6, 6, 7,
911  0, 0, 1, 1, 1, 2, 2, 3, 5, 6, 7, 8, 5, 6, 6, 7,
912  0, 0, 0, 1, 2, 3, 3, 4, 3, 4, 5, 6, 9,10,11,12,
913  0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 1, 1, 3, 3, 4, 5});
914 }

◆ BOOST_FIXTURE_TEST_CASE() [17/17]

BOOST_FIXTURE_TEST_CASE ( ParseDepthwiseConv2DFilterWeightsPerChannelQuant4_3_1  ,
DepthwiseConvolution2dWeightsPerChannelQuant4_3_1Fixture   
)

Definition at line 950 of file DepthwiseConvolution2D.cpp.

References BOOST_AUTO_TEST_SUITE_END().

952 {
953  RunTest<4, armnn::DataType::QAsymmS8>(
954  0,
955  { 3,3,3,4, 4,4,0,0, 0,3,4,3, 0,2,2,3,
956  3,0,3,0, 0,3,2,1, 4,1,2,2, 0,0,0,4,
957  3,2,2,2, 2,1,0,4, 4,3,2,4, 3,2,0,0,
958  4,1,4,4, 1,0,4,3, 3,2,0,3, 1,1,0,2},
959  { 26,21,21, 7,12,17,28,21,20,22,25,26, 6,11,10,16,
960  16,16, 4,12, 7,18,28,27,30,20,12,14,16,19,17, 6,
961  12,12, 8, 0, 3,13,18,15,18,26,20,26,26,32,28,21,
962  0, 0, 0, 0, 2, 6, 6, 4, 2, 8, 6, 8,15,10,10,24,
963  20,21, 9, 7, 3, 6,15,16,17,22,17,22,17,18,14, 7,
964  18, 6,16,12,12,11,17,15,18,18,10,12,27,26,22,18,
965  27,28,12,10, 7, 3, 8,13, 8,12,14,16,26,24,24,24,
966  9, 9, 6, 0, 0, 0, 2, 6, 0, 0, 0, 0, 4, 8, 8,16,
967  26,24,17, 7, 2, 8,11,10,30,24,30,28,32,33,30,24,
968  20,11,16,12, 7, 9,17,13,20,14,16,18,31,36,33,29,
969  28,25,19, 9, 6,13,20,19, 2, 8, 6, 8,17,17,15,25,
970  12,15, 5, 3, 2, 6, 7, 7, 0, 0, 0, 0, 6, 2, 2, 6,
971  14,16, 7, 5, 1, 3, 3, 2,20,28,12,20,13,20,20,19,
972  9, 4,10, 4, 0, 4, 8, 6, 4,16,12,16,12,18,18,15,
973  11,12, 6, 4, 2, 8,10, 7, 0, 0, 0, 0, 9,14,14,14,
974  3, 4, 1, 1, 1, 3, 3, 2, 0, 0, 0, 0, 2, 4, 4, 8});
975 }