From 4bbbf66a69b339e27a22c18d9b2a485a22a77226 Mon Sep 17 00:00:00 2001 From: Patryk Elszkowski Date: Wed, 19 May 2021 07:41:35 +0200 Subject: [PATCH] add SLT for activation function with integer type to check rounding (#5506) Co-authored-by: Patryk Elszkowski --- .../single_layer_tests/activation.cpp | 21 +++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/inference-engine/tests/functional/plugin/cpu/shared_tests_instances/single_layer_tests/activation.cpp b/inference-engine/tests/functional/plugin/cpu/shared_tests_instances/single_layer_tests/activation.cpp index 6794b83175b..76607e55f76 100644 --- a/inference-engine/tests/functional/plugin/cpu/shared_tests_instances/single_layer_tests/activation.cpp +++ b/inference-engine/tests/functional/plugin/cpu/shared_tests_instances/single_layer_tests/activation.cpp @@ -22,6 +22,10 @@ const std::vector netPrecisions = { InferenceEngine::Precision::FP16 }; +const std::vector intPrecisions = { + InferenceEngine::Precision::I32, +}; + const std::map>> activationTypes = { {Sigmoid, {}}, {Tanh, {}}, @@ -58,6 +62,12 @@ const std::map>> activationTypes {GeluTanh, {}} }; +// List of operations that should be tested also with integer precision +const std::map>> intActivationTypes = { + {Sqrt, {}}, + {Tanh, {}}, +}; + const std::map>> activationParamTypes = { {PReLu, {{-0.01f}}}, {LeakyRelu, {{0.01f}}} @@ -105,8 +115,19 @@ const auto basicPreluCases = ::testing::Combine( ::testing::Values(CommonTestUtils::DEVICE_CPU) ); +const auto basicIntegerOperations = ::testing::Combine( + ::testing::ValuesIn(CommonTestUtils::combineParams(intActivationTypes)), + ::testing::ValuesIn(intPrecisions), + ::testing::ValuesIn(intPrecisions), + ::testing::ValuesIn(intPrecisions), + ::testing::Values(InferenceEngine::Layout::ANY), + ::testing::Values(InferenceEngine::Layout::ANY), + ::testing::ValuesIn(CommonTestUtils::combineParams(basic)), + ::testing::Values(CommonTestUtils::DEVICE_CPU) +); INSTANTIATE_TEST_CASE_P(smoke_Activation_Basic, ActivationLayerTest, basicCases, ActivationLayerTest::getTestCaseName); +INSTANTIATE_TEST_CASE_P(smoke_Integer_Activation_Basic, ActivationLayerTest, basicIntegerOperations, ActivationLayerTest::getTestCaseName); INSTANTIATE_TEST_CASE_P(smoke_Activation_Basic_Prelu, ActivationLayerTest, basicPreluCases, ActivationLayerTest::getTestCaseName); INSTANTIATE_TEST_CASE_P(smoke_Activation_Basic, ActivationParamLayerTest, basicPreluCases, ActivationLayerTest::getTestCaseName);