diff options
author | narpra01 <narumol.prangnawarat@arm.com> | 2018-11-19 15:30:27 +0000 |
---|---|---|
committer | Matthew Bentham <matthew.bentham@arm.com> | 2018-11-19 16:04:07 +0000 |
commit | 5cdda351b4e12c5299173ec6b0fc75a948bdcda0 (patch) | |
tree | 2e426b492efe8ce5effe5b7d19a1776abbc8eca5 /src/backends/reference | |
parent | de8b7b3c31f1b15c7ad867d86e14ab27dd022a14 (diff) | |
download | armnn-5cdda351b4e12c5299173ec6b0fc75a948bdcda0.tar.gz |
IVGCVSW-2105 - Unit tests for merger
* Add LayerTests
* Add WorkloadTests
!android-nn-driver:166
Change-Id: I903461002879f60fc9f8ae929f18784e2d9b1fc1
Diffstat (limited to 'src/backends/reference')
-rw-r--r-- | src/backends/reference/test/RefCreateWorkloadTests.cpp | 54 | ||||
-rw-r--r-- | src/backends/reference/test/RefLayerTests.cpp | 27 |
2 files changed, 76 insertions, 5 deletions
diff --git a/src/backends/reference/test/RefCreateWorkloadTests.cpp b/src/backends/reference/test/RefCreateWorkloadTests.cpp index d03fe5cb9f..47f9d0ef4e 100644 --- a/src/backends/reference/test/RefCreateWorkloadTests.cpp +++ b/src/backends/reference/test/RefCreateWorkloadTests.cpp @@ -609,4 +609,58 @@ BOOST_AUTO_TEST_CASE(CreateReshapeUint8Workload) RefCreateReshapeWorkloadTest<RefReshapeUint8Workload, armnn::DataType::QuantisedAsymm8>(); } +template <typename MergerWorkloadType, armnn::DataType DataType> +static void RefCreateMergerWorkloadTest(const armnn::TensorShape& outputShape, + unsigned int concatAxis) +{ + Graph graph; + RefWorkloadFactory factory; + auto workload = CreateMergerWorkloadTest<MergerWorkloadType, DataType>(factory, graph, outputShape, concatAxis); + + CheckInputsOutput(std::move(workload), + TensorInfo({ 2, 3, 2, 5 }, DataType), + TensorInfo({ 2, 3, 2, 5 }, DataType), + TensorInfo(outputShape, DataType)); +} + +BOOST_AUTO_TEST_CASE(CreateMergerDim0Float32Workload) +{ + RefCreateMergerWorkloadTest<RefMergerFloat32Workload, armnn::DataType::Float32>({ 4, 3, 2, 5 }, 0); +} + +BOOST_AUTO_TEST_CASE(CreateMergerDim0Uint8Workload) +{ + RefCreateMergerWorkloadTest<RefMergerUint8Workload, armnn::DataType::QuantisedAsymm8>({ 4, 3, 2, 5 }, 0); +} + +BOOST_AUTO_TEST_CASE(CreateMergerDim1Float32Workload) +{ + RefCreateMergerWorkloadTest<RefMergerFloat32Workload, armnn::DataType::Float32>({ 2, 6, 2, 5 }, 1); +} + +BOOST_AUTO_TEST_CASE(CreateMergerDim1Uint8Workload) +{ + RefCreateMergerWorkloadTest<RefMergerUint8Workload, armnn::DataType::QuantisedAsymm8>({ 2, 6, 2, 5 }, 1); +} + +BOOST_AUTO_TEST_CASE(CreateMergerDim2Float32Workload) +{ + RefCreateMergerWorkloadTest<RefMergerFloat32Workload, armnn::DataType::Float32>({ 2, 3, 4, 5 }, 2); +} + +BOOST_AUTO_TEST_CASE(CreateMergerDim2Uint8Workload) +{ + RefCreateMergerWorkloadTest<RefMergerUint8Workload, armnn::DataType::QuantisedAsymm8>({ 2, 3, 4, 5 }, 2); +} + +BOOST_AUTO_TEST_CASE(CreateMergerDim3Float32Workload) +{ + RefCreateMergerWorkloadTest<RefMergerFloat32Workload, armnn::DataType::Float32>({ 2, 3, 2, 10 }, 3); +} + +BOOST_AUTO_TEST_CASE(CreateMergerDim3Uint8Workload) +{ + RefCreateMergerWorkloadTest<RefMergerUint8Workload, armnn::DataType::QuantisedAsymm8>({ 2, 3, 2, 10 }, 3); +} + BOOST_AUTO_TEST_SUITE_END() diff --git a/src/backends/reference/test/RefLayerTests.cpp b/src/backends/reference/test/RefLayerTests.cpp index 35981ea4b3..aba9f3eb0e 100644 --- a/src/backends/reference/test/RefLayerTests.cpp +++ b/src/backends/reference/test/RefLayerTests.cpp @@ -289,7 +289,6 @@ ARMNN_AUTO_TEST_CASE(PadUint82d, PadUint82dTest) ARMNN_AUTO_TEST_CASE(PadUint83d, PadUint83dTest) ARMNN_AUTO_TEST_CASE(PadUint84d, PadUint84dTest) - // Constant ARMNN_AUTO_TEST_CASE(Constant, ConstantTest) ARMNN_AUTO_TEST_CASE(ConstantUint8, ConstantUint8Test) @@ -312,15 +311,33 @@ ARMNN_AUTO_TEST_CASE(Concatenation3dDim0, Concatenation3dDim0Test) ARMNN_AUTO_TEST_CASE(Concatenation3dDim0Uint8, Concatenation3dDim0Uint8Test) ARMNN_AUTO_TEST_CASE(Concatenation3dDim1, Concatenation3dDim1Test) ARMNN_AUTO_TEST_CASE(Concatenation3dDim1Uint8, Concatenation3dDim1Uint8Test) -ARMNN_AUTO_TEST_CASE(Concatenation3dDim2, Concatenation3dDim2Test) -ARMNN_AUTO_TEST_CASE(Concatenation3dDim2Uint8, Concatenation3dDim2Uint8Test) +ARMNN_AUTO_TEST_CASE(Concatenation3dDim2, Concatenation3dDim2Test, true) +ARMNN_AUTO_TEST_CASE(Concatenation3dDim2Uint8, Concatenation3dDim2Uint8Test, true) ARMNN_AUTO_TEST_CASE(Concatenation3dDim0DiffInputDims, Concatenation3dDim0DiffInputDimsTest) ARMNN_AUTO_TEST_CASE(Concatenation3dDim0DiffInputDimsUint8, Concatenation3dDim0DiffInputDimsUint8Test) ARMNN_AUTO_TEST_CASE(Concatenation3dDim1DiffInputDims, Concatenation3dDim1DiffInputDimsTest) ARMNN_AUTO_TEST_CASE(Concatenation3dDim1DiffInputDimsUint8, Concatenation3dDim1DiffInputDimsUint8Test) -ARMNN_AUTO_TEST_CASE(Concatenation3dDim2DiffInputDims, Concatenation3dDim2DiffInputDimsTest) -ARMNN_AUTO_TEST_CASE(Concatenation3dDim2DiffInputDimsUint8, Concatenation3dDim2DiffInputDimsUint8Test) +ARMNN_AUTO_TEST_CASE(Concatenation3dDim2DiffInputDims, Concatenation3dDim2DiffInputDimsTest, true) +ARMNN_AUTO_TEST_CASE(Concatenation3dDim2DiffInputDimsUint8, Concatenation3dDim2DiffInputDimsUint8Test, true) + +ARMNN_AUTO_TEST_CASE(Concatenation4dDim0, Concatenation4dDim0Test) +ARMNN_AUTO_TEST_CASE(Concatenation4dDim1, Concatenation4dDim1Test) +ARMNN_AUTO_TEST_CASE(Concatenation4dDim2, Concatenation4dDim2Test) +ARMNN_AUTO_TEST_CASE(Concatenation4dDim3, Concatenation4dDim3Test, true) +ARMNN_AUTO_TEST_CASE(Concatenation4dDim0Uint8, Concatenation4dDim0Uint8Test) +ARMNN_AUTO_TEST_CASE(Concatenation4dDim1Uint8, Concatenation4dDim1Uint8Test) +ARMNN_AUTO_TEST_CASE(Concatenation4dDim2Uint8, Concatenation4dDim2Uint8Test) +ARMNN_AUTO_TEST_CASE(Concatenation4dDim3Uint8, Concatenation4dDim3Uint8Test, true) + +ARMNN_AUTO_TEST_CASE(Concatenation4dDiffShapeDim0, Concatenation4dDiffShapeDim0Test) +ARMNN_AUTO_TEST_CASE(Concatenation4dDiffShapeDim1, Concatenation4dDiffShapeDim1Test) +ARMNN_AUTO_TEST_CASE(Concatenation4dDiffShapeDim2, Concatenation4dDiffShapeDim2Test) +ARMNN_AUTO_TEST_CASE(Concatenation4dDiffShapeDim3, Concatenation4dDiffShapeDim3Test, true) +ARMNN_AUTO_TEST_CASE(Concatenation4dDiffShapeDim0Uint8, Concatenation4dDiffShapeDim0Uint8Test) +ARMNN_AUTO_TEST_CASE(Concatenation4dDiffShapeDim1Uint8, Concatenation4dDiffShapeDim1Uint8Test) +ARMNN_AUTO_TEST_CASE(Concatenation4dDiffShapeDim2Uint8, Concatenation4dDiffShapeDim2Uint8Test) +ARMNN_AUTO_TEST_CASE(Concatenation4dDiffShapeDim3Uint8, Concatenation4dDiffShapeDim3Uint8Test, true) // Floor ARMNN_AUTO_TEST_CASE(SimpleFloor, SimpleFloorTest) |