diff options
Diffstat (limited to 'delegate/test/FullyConnectedTest.cpp')
-rw-r--r-- | delegate/test/FullyConnectedTest.cpp | 103 |
1 files changed, 28 insertions, 75 deletions
diff --git a/delegate/test/FullyConnectedTest.cpp b/delegate/test/FullyConnectedTest.cpp index 3ef5cedbd7..38669a68ac 100644 --- a/delegate/test/FullyConnectedTest.cpp +++ b/delegate/test/FullyConnectedTest.cpp @@ -1,14 +1,16 @@ // -// Copyright © 2020-2021,2023 Arm Ltd and Contributors. All rights reserved. +// Copyright © 2020-2021,2023-2024 Arm Ltd and Contributors. All rights reserved. // SPDX-License-Identifier: MIT // #include "FullyConnectedTestHelper.hpp" +#include <doctest/doctest.h> + namespace { -void FullyConnectedFp32Test(std::vector<armnn::BackendId>& backends, bool constantWeights = true) +void FullyConnectedFp32Test(const std::vector<armnn::BackendId>& backends = {}, bool constantWeights = true) { std::vector<int32_t> inputTensorShape { 1, 4, 1, 1 }; std::vector<int32_t> weightsTensorShape { 1, 4 }; @@ -21,8 +23,7 @@ void FullyConnectedFp32Test(std::vector<armnn::BackendId>& backends, bool consta std::vector<float> expectedOutputValues = { (400 + 10) }; // bias is set std::vector<float> biasData = { 10 } in the model - FullyConnectedTest<float>(backends, - ::tflite::TensorType_FLOAT32, + FullyConnectedTest<float>(::tflite::TensorType_FLOAT32, tflite::ActivationFunctionType_NONE, inputTensorShape, weightsTensorShape, @@ -31,10 +32,11 @@ void FullyConnectedFp32Test(std::vector<armnn::BackendId>& backends, bool consta inputValues, expectedOutputValues, weightsData, + backends, constantWeights); } -void FullyConnectedActivationTest(std::vector<armnn::BackendId>& backends, bool constantWeights = true) +void FullyConnectedActivationTest(const std::vector<armnn::BackendId>& backends = {}, bool constantWeights = true) { std::vector<int32_t> inputTensorShape { 1, 4, 1, 1 }; std::vector<int32_t> weightsTensorShape { 1, 4 }; @@ -47,8 +49,7 @@ void FullyConnectedActivationTest(std::vector<armnn::BackendId>& backends, bool std::vector<float> expectedOutputValues = { 0 }; // bias is set std::vector<float> biasData = { 10 } in the model - FullyConnectedTest<float>(backends, - ::tflite::TensorType_FLOAT32, + FullyConnectedTest<float>(::tflite::TensorType_FLOAT32, tflite::ActivationFunctionType_RELU, inputTensorShape, weightsTensorShape, @@ -57,10 +58,11 @@ void FullyConnectedActivationTest(std::vector<armnn::BackendId>& backends, bool inputValues, expectedOutputValues, weightsData, + backends, constantWeights); } -void FullyConnectedInt8Test(std::vector<armnn::BackendId>& backends, bool constantWeights = true) +void FullyConnectedInt8Test(const std::vector<armnn::BackendId>& backends = {}, bool constantWeights = true) { std::vector<int32_t> inputTensorShape { 1, 4, 2, 1 }; std::vector<int32_t> weightsTensorShape { 1, 4 }; @@ -75,104 +77,55 @@ void FullyConnectedInt8Test(std::vector<armnn::BackendId>& backends, bool consta // bias is set std::vector<int32_t> biasData = { 10 } in the model // input and weights quantization scale 1.0f and offset 0 in the model // output quantization scale 2.0f and offset 0 in the model - FullyConnectedTest<int8_t>(backends, - ::tflite::TensorType_INT8, - tflite::ActivationFunctionType_NONE, + FullyConnectedTest<int8_t>(::tflite::TensorType_INT8, + tflite::ActivationFunctionType_NONE, inputTensorShape, weightsTensorShape, biasTensorShape, - outputTensorShape, - inputValues, - expectedOutputValues, - weightsData, + outputTensorShape, + inputValues, + expectedOutputValues, + weightsData, + backends, constantWeights); } -TEST_SUITE("FullyConnected_GpuAccTests") -{ - -TEST_CASE ("FullyConnected_FP32_GpuAcc_Test") -{ - std::vector<armnn::BackendId> backends = { armnn::Compute::GpuAcc }; - FullyConnectedFp32Test(backends); -} - -TEST_CASE ("FullyConnected_Int8_GpuAcc_Test") -{ - std::vector<armnn::BackendId> backends = { armnn::Compute::GpuAcc }; - FullyConnectedInt8Test(backends); -} - -TEST_CASE ("FullyConnected_Activation_GpuAcc_Test") -{ - std::vector<armnn::BackendId> backends = { armnn::Compute::GpuAcc }; - FullyConnectedActivationTest(backends); -} - -} // End of TEST_SUITE("FullyConnected_GpuAccTests") - -TEST_SUITE("FullyConnected_CpuAccTests") -{ - -TEST_CASE ("FullyConnected_FP32_CpuAcc_Test") -{ - std::vector<armnn::BackendId> backends = { armnn::Compute::CpuAcc }; - FullyConnectedFp32Test(backends); -} - -TEST_CASE ("FullyConnected_Int8_CpuAcc_Test") -{ - std::vector<armnn::BackendId> backends = { armnn::Compute::CpuAcc }; - FullyConnectedInt8Test(backends); -} - -TEST_CASE ("FullyConnected_Activation_CpuAcc_Test") -{ - std::vector<armnn::BackendId> backends = { armnn::Compute::CpuAcc }; - FullyConnectedActivationTest(backends); -} - -} // End of TEST_SUITE("FullyConnected_CpuAccTests") - -TEST_SUITE("FullyConnected_CpuRefTests") +TEST_SUITE("FullyConnectedTests") { -TEST_CASE ("FullyConnected_FP32_CpuRef_Test") +TEST_CASE ("FullyConnected_FP32_Test") { - std::vector<armnn::BackendId> backends = { armnn::Compute::CpuRef }; - FullyConnectedFp32Test(backends); + FullyConnectedFp32Test(); } -TEST_CASE ("FullyConnected_Int8_CpuRef_Test") +TEST_CASE ("FullyConnected_Int8_Test") { - std::vector<armnn::BackendId> backends = { armnn::Compute::CpuRef }; - FullyConnectedInt8Test(backends); + FullyConnectedInt8Test(); } -TEST_CASE ("FullyConnected_Activation_CpuRef_Test") +TEST_CASE ("FullyConnected_Activation_Test") { - std::vector<armnn::BackendId> backends = { armnn::Compute::CpuRef }; - FullyConnectedActivationTest(backends); + FullyConnectedActivationTest(); } -TEST_CASE ("FullyConnected_Weights_As_Inputs_FP32_CpuRef_Test") +TEST_CASE ("FullyConnected_Weights_As_Inputs_FP32_Test") { std::vector<armnn::BackendId> backends = { armnn::Compute::CpuRef }; FullyConnectedFp32Test(backends, false); } -TEST_CASE ("FullyConnected_Weights_As_Inputs_Int8_CpuRef_Test") +TEST_CASE ("FullyConnected_Weights_As_Inputs_Int8_Test") { std::vector<armnn::BackendId> backends = { armnn::Compute::CpuRef }; FullyConnectedInt8Test(backends, false); } -TEST_CASE ("FullyConnected_Weights_As_Inputs_Activation_CpuRef_Test") +TEST_CASE ("FullyConnected_Weights_As_Inputs_Activation_Test") { std::vector<armnn::BackendId> backends = { armnn::Compute::CpuRef }; FullyConnectedActivationTest(backends, false); } -} // End of TEST_SUITE("FullyConnected_CpuRefTests") +} // End of TEST_SUITE("FullyConnectedTests") } // anonymous namespace
\ No newline at end of file |