diff options
author | Tianle Cheng <tianle.cheng@arm.com> | 2023-12-12 13:52:22 +0000 |
---|---|---|
committer | Tianle Cheng <tianle.cheng@arm.com> | 2023-12-15 10:22:31 +0000 |
commit | 7790dc6531034778d92ba264fd61174bcff7051e (patch) | |
tree | fe24f0a8a1229296168db559501a7403d5cbf962 /src/backends/backendsCommon/test/SliceEndToEndTestImpl.hpp | |
parent | f0d8ec1f4be3ce5794a48c3d3449fe93f2e58d04 (diff) | |
download | armnn-7790dc6531034778d92ba264fd61174bcff7051e.tar.gz |
IVGCVSW-8113 Update EndToEnd tests and TosaReference support for Maximum
* Added ElementwiseBinary EndToEnd tests with inputs of the same shape to avoid Reshape
* Added Slice EndToEnd tests with 4D tensors
* Added TosaReference support for Maximum and TosaRefEndToEnd tests
Signed-off-by: Tianle Cheng <tianle.cheng@arm.com>
Change-Id: I4fa24435a75559e00b110d0e542b4f2bf07b21b4
Diffstat (limited to 'src/backends/backendsCommon/test/SliceEndToEndTestImpl.hpp')
-rw-r--r-- | src/backends/backendsCommon/test/SliceEndToEndTestImpl.hpp | 35 |
1 files changed, 34 insertions, 1 deletions
diff --git a/src/backends/backendsCommon/test/SliceEndToEndTestImpl.hpp b/src/backends/backendsCommon/test/SliceEndToEndTestImpl.hpp index 811ce27b79..43bc668753 100644 --- a/src/backends/backendsCommon/test/SliceEndToEndTestImpl.hpp +++ b/src/backends/backendsCommon/test/SliceEndToEndTestImpl.hpp @@ -1,5 +1,5 @@ // -// Copyright © 2022 Arm Ltd and Contributors. All rights reserved. +// Copyright © 2022-2023 Arm Ltd and Contributors. All rights reserved. // SPDX-License-Identifier: MIT // #pragma once @@ -96,4 +96,37 @@ void SliceEndToEndFloat16(const std::vector<armnn::BackendId>& backends) EndToEndLayerTestImpl<ArmnnType, ArmnnType>(std::move(network), inputTensorData, expectedOutputData, backends); } +template<armnn::DataType ArmnnType, typename T = armnn::ResolveType<ArmnnType>> +void SliceEndToEnd4Dim(const std::vector<armnn::BackendId>& backends) +{ + using namespace armnn; + + const TensorShape& inputShape = { 2, 3, 2, 3 }; + const TensorShape& outputShape = { 1, 3, 2, 1 }; + + SliceDescriptor descriptor; + descriptor.m_Begin = { 1, 0, 0, 0 }; + descriptor.m_Size = { 1, 3, 2, 1 }; + + INetworkPtr network = CreateSliceNetwork<ArmnnType>(inputShape, outputShape, descriptor); + + CHECK(network); + + std::vector<T> inputData{ 1, 1, 1, 2, 2, 2, + 3, 3, 3, 4, 4, 4, + 5, 5, 5, 6, 6, 6, + 1, 1, 1, 2, 2, 2, + 3, 3, 3, 4, 4, 4, + 5, 5, 5, 6, 6, 6 }; + + std::vector<T> expectedOutput{ 1, 2, + 3, 4, + 5, 6 }; + + std::map<int, std::vector<T>> inputTensorData = { { 0, inputData } }; + std::map<int, std::vector<T>> expectedOutputData = { { 0, expectedOutput } }; + + EndToEndLayerTestImpl<ArmnnType, ArmnnType>(std::move(network), inputTensorData, expectedOutputData, backends); +} + } // anonymous namespace
\ No newline at end of file |