From ae54e026c86aec7d6819ee3ef76372c1a3c92467 Mon Sep 17 00:00:00 2001 From: Georgios Pinitas Date: Mon, 16 Jul 2018 15:41:27 +0100 Subject: COMPMID-1364: Add support for NHWC in NEDepthConcatenateLayer Change-Id: I4f8e46d1c79afa9284f2c6dc00383c453a8e7bd5 Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/140165 Reviewed-by: Giorgio Arena Reviewed-by: Pablo Tello Tested-by: Jenkins --- tests/validation/NEON/DepthConcatenateLayer.cpp | 55 +++++++++++++++++++++++++ 1 file changed, 55 insertions(+) (limited to 'tests/validation/NEON/DepthConcatenateLayer.cpp') diff --git a/tests/validation/NEON/DepthConcatenateLayer.cpp b/tests/validation/NEON/DepthConcatenateLayer.cpp index 0e0b674e41..24e7649e7d 100644 --- a/tests/validation/NEON/DepthConcatenateLayer.cpp +++ b/tests/validation/NEON/DepthConcatenateLayer.cpp @@ -42,6 +42,44 @@ namespace validation TEST_SUITE(NEON) TEST_SUITE(DepthConcatenateLayer) +// *INDENT-OFF* +// clang-format off +DATA_TEST_CASE(Validate, framework::DatasetMode::ALL, zip(zip(zip( + framework::dataset::make("InputInfo1", { TensorInfo(TensorShape(23U, 27U, 5U), 1, DataType::F32), // Mismatching data type input/output + TensorInfo(TensorShape(24U, 27U, 4U), 1, DataType::F32), // Mismatching x dimension + TensorInfo(TensorShape(23U, 27U, 3U), 1, DataType::F32), // Mismatching total depth + TensorInfo(TensorShape(16U, 27U, 6U), 1, DataType::F32) + }), + framework::dataset::make("InputInfo2", { TensorInfo(TensorShape(23U, 27U, 4U), 1, DataType::F32), + TensorInfo(TensorShape(23U, 27U, 5U), 1, DataType::F32), + TensorInfo(TensorShape(23U, 27U, 4U), 1, DataType::F32), + TensorInfo(TensorShape(16U, 27U, 6U), 1, DataType::F32) + })), + framework::dataset::make("OutputInfo", { TensorInfo(TensorShape(23U, 27U, 9U), 1, DataType::F16), + TensorInfo(TensorShape(25U, 12U, 9U), 1, DataType::F32), + TensorInfo(TensorShape(23U, 27U, 8U), 1, DataType::F32), + TensorInfo(TensorShape(16U, 27U, 12U), 1, DataType::F32) + })), + framework::dataset::make("Expected", { false, false, false, true })), + input_info1, input_info2, output_info,expected) +{ + std::vector inputs_vector_info; + inputs_vector_info.emplace_back(std::move(input_info1)); + inputs_vector_info.emplace_back(std::move(input_info2)); + + std::vector inputs_vector_info_raw; + for(auto &input : inputs_vector_info) + { + inputs_vector_info_raw.emplace_back(&input); + } + + bool is_valid = bool(NEDepthConcatenateLayer::validate(inputs_vector_info_raw, + &output_info.clone()->set_is_resizable(false))); + ARM_COMPUTE_EXPECT(is_valid == expected, framework::LogLevel::ERRORS); +} +// clang-format on +// *INDENT-ON* + TEST_CASE(Configuration, framework::DatasetMode::ALL) { // Create tensors @@ -100,6 +138,23 @@ FIXTURE_DATA_TEST_CASE(RunLarge, NEDepthConcatenateLayerFixture, framewor TEST_SUITE_END() TEST_SUITE_END() +TEST_SUITE(Quantized) +TEST_SUITE(QASYMM8) +FIXTURE_DATA_TEST_CASE(RunSmall, NEDepthConcatenateLayerFixture, framework::DatasetMode::PRECOMMIT, combine(datasets::Small2DShapes(), framework::dataset::make("DataType", + DataType::QASYMM8))) +{ + // Validate output + validate(Accessor(_target), _reference); +} +FIXTURE_DATA_TEST_CASE(RunLarge, NEDepthConcatenateLayerFixture, framework::DatasetMode::NIGHTLY, combine(datasets::DepthConcatenateLayerShapes(), framework::dataset::make("DataType", + DataType::QASYMM8))) +{ + // Validate output + validate(Accessor(_target), _reference); +} +TEST_SUITE_END() +TEST_SUITE_END() + TEST_SUITE_END() TEST_SUITE_END() } // namespace validation -- cgit v1.2.1