From 4563f71ffcfb4f19979de71b088cae555efa26cb Mon Sep 17 00:00:00 2001 From: Xuejun Zhai Date: Mon, 13 Nov 2023 21:29:36 +0800 Subject: [PATCH] [Func Test] remove ngraph::helpers::QuantizationGranularity, replaced with ov::test::utils::QuantizationGranularity (#20985) Signed-off-by: Zhai, Xuejun Co-authored-by: Chen Peter --- .../quantized_group_convolution.cpp | 7 +++--- ...ntized_group_convolution_backprop_data.cpp | 7 +++--- .../quantized_convolution_backprop_data.hpp | 2 +- .../subgraph/quantized_group_convolution.hpp | 2 +- ...ntized_group_convolution_backprop_data.hpp | 2 +- .../subgraph/quantized_mat_mul.hpp | 2 +- .../quantized_convolution_backprop_data.cpp | 9 ++++---- .../subgraph/quantized_group_convolution.cpp | 10 ++++---- ...ntized_group_convolution_backprop_data.cpp | 9 ++++---- .../src/subgraph/quantized_mat_mul.cpp | 14 +++++------ .../include/ov_models/utils/ov_helpers.hpp | 23 +------------------ .../include/common_test_utils/test_enums.hpp | 2 ++ 12 files changed, 33 insertions(+), 56 deletions(-) diff --git a/src/plugins/intel_cpu/tests/functional/shared_tests_instances/subgraph_tests/quantized_group_convolution.cpp b/src/plugins/intel_cpu/tests/functional/shared_tests_instances/subgraph_tests/quantized_group_convolution.cpp index 384709bfd69..5be37469a8d 100644 --- a/src/plugins/intel_cpu/tests/functional/shared_tests_instances/subgraph_tests/quantized_group_convolution.cpp +++ b/src/plugins/intel_cpu/tests/functional/shared_tests_instances/subgraph_tests/quantized_group_convolution.cpp @@ -8,7 +8,6 @@ #include "common_test_utils/test_constants.hpp" using namespace SubgraphTestsDefinitions; -using namespace ngraph::helpers; namespace { @@ -20,8 +19,10 @@ const std::vector netPrecisions = { const std::vector numOutChannels = {3, 24, 48}; const std::vector numGroups = {3}; -const std::vector levels = {256}; -const std::vector granularity = {QuantizationGranularity::Pertensor, QuantizationGranularity::Perchannel}; +const std::vector levels = {256}; +const std::vector granularity = { + ov::test::utils::QuantizationGranularity::Pertensor, + ov::test::utils::QuantizationGranularity::Perchannel}; const std::vector quantizeWeights = {false, true}; /* ============= 2D GroupConvolution ============= */ diff --git a/src/plugins/intel_cpu/tests/functional/shared_tests_instances/subgraph_tests/quantized_group_convolution_backprop_data.cpp b/src/plugins/intel_cpu/tests/functional/shared_tests_instances/subgraph_tests/quantized_group_convolution_backprop_data.cpp index 833cad7e1a2..14df1ece269 100644 --- a/src/plugins/intel_cpu/tests/functional/shared_tests_instances/subgraph_tests/quantized_group_convolution_backprop_data.cpp +++ b/src/plugins/intel_cpu/tests/functional/shared_tests_instances/subgraph_tests/quantized_group_convolution_backprop_data.cpp @@ -8,7 +8,6 @@ #include "common_test_utils/test_constants.hpp" using namespace SubgraphTestsDefinitions; -using namespace ngraph::helpers; namespace { @@ -19,8 +18,10 @@ const std::vector netPrecisions = { const std::vector numOutChannels = {16, 32}; const std::vector numGroups = {2, 8, 16}; -const std::vector levels = {256}; -const std::vector granularity = {QuantizationGranularity::Pertensor, QuantizationGranularity::Perchannel}; +const std::vector levels = {256}; +const std::vector granularity = { + ov::test::utils::QuantizationGranularity::Pertensor, + ov::test::utils::QuantizationGranularity::Perchannel}; /* ============= 2D GroupConvolutionBackpropData ============= */ const std::vector> inputShapes2D = {{1, 16, 10, 10}, {1, 32, 10, 10}}; diff --git a/src/tests/functional/shared_test_classes/include/shared_test_classes/subgraph/quantized_convolution_backprop_data.hpp b/src/tests/functional/shared_test_classes/include/shared_test_classes/subgraph/quantized_convolution_backprop_data.hpp index 03fd861636c..4289482c216 100644 --- a/src/tests/functional/shared_test_classes/include/shared_test_classes/subgraph/quantized_convolution_backprop_data.hpp +++ b/src/tests/functional/shared_test_classes/include/shared_test_classes/subgraph/quantized_convolution_backprop_data.hpp @@ -24,7 +24,7 @@ typedef std::tuple< size_t, ngraph::op::PadType, size_t, - ngraph::helpers::QuantizationGranularity> quantConvBackpropDataSpecificParams; + ov::test::utils::QuantizationGranularity> quantConvBackpropDataSpecificParams; typedef std::tuple< quantConvBackpropDataSpecificParams, InferenceEngine::Precision, diff --git a/src/tests/functional/shared_test_classes/include/shared_test_classes/subgraph/quantized_group_convolution.hpp b/src/tests/functional/shared_test_classes/include/shared_test_classes/subgraph/quantized_group_convolution.hpp index 946aa41702a..eff46274468 100644 --- a/src/tests/functional/shared_test_classes/include/shared_test_classes/subgraph/quantized_group_convolution.hpp +++ b/src/tests/functional/shared_test_classes/include/shared_test_classes/subgraph/quantized_group_convolution.hpp @@ -24,7 +24,7 @@ typedef std::tuple< size_t, size_t, size_t, - ngraph::helpers::QuantizationGranularity, + ov::test::utils::QuantizationGranularity, bool> quantGroupConvSpecificParams; typedef std::tuple< quantGroupConvSpecificParams, diff --git a/src/tests/functional/shared_test_classes/include/shared_test_classes/subgraph/quantized_group_convolution_backprop_data.hpp b/src/tests/functional/shared_test_classes/include/shared_test_classes/subgraph/quantized_group_convolution_backprop_data.hpp index d10e3fcdcf8..a006151d2e5 100644 --- a/src/tests/functional/shared_test_classes/include/shared_test_classes/subgraph/quantized_group_convolution_backprop_data.hpp +++ b/src/tests/functional/shared_test_classes/include/shared_test_classes/subgraph/quantized_group_convolution_backprop_data.hpp @@ -25,7 +25,7 @@ typedef std::tuple< size_t, ngraph::op::PadType, size_t, - ngraph::helpers::QuantizationGranularity> quantGroupConvBackpropDataSpecificParams; + ov::test::utils::QuantizationGranularity> quantGroupConvBackpropDataSpecificParams; typedef std::tuple< quantGroupConvBackpropDataSpecificParams, InferenceEngine::Precision, diff --git a/src/tests/functional/shared_test_classes/include/shared_test_classes/subgraph/quantized_mat_mul.hpp b/src/tests/functional/shared_test_classes/include/shared_test_classes/subgraph/quantized_mat_mul.hpp index 6494a32a01c..8187c864575 100644 --- a/src/tests/functional/shared_test_classes/include/shared_test_classes/subgraph/quantized_mat_mul.hpp +++ b/src/tests/functional/shared_test_classes/include/shared_test_classes/subgraph/quantized_mat_mul.hpp @@ -20,7 +20,7 @@ typedef std::tuple< uint64_t, QuantRange, QuantRange, - ngraph::helpers::QuantizationGranularity, + ov::test::utils::QuantizationGranularity, InferenceEngine::Precision> QuantParams; typedef std::tuple< diff --git a/src/tests/functional/shared_test_classes/src/subgraph/quantized_convolution_backprop_data.cpp b/src/tests/functional/shared_test_classes/src/subgraph/quantized_convolution_backprop_data.cpp index 70ca3a12de9..1eebb68115e 100644 --- a/src/tests/functional/shared_test_classes/src/subgraph/quantized_convolution_backprop_data.cpp +++ b/src/tests/functional/shared_test_classes/src/subgraph/quantized_convolution_backprop_data.cpp @@ -5,7 +5,6 @@ #include "shared_test_classes/subgraph/quantized_convolution_backprop_data.hpp" namespace SubgraphTestsDefinitions { -using ngraph::helpers::QuantizationGranularity; std::string QuantConvBackpropDataLayerTest::getTestCaseName(const testing::TestParamInfo& obj) { quantConvBackpropDataSpecificParams groupConvBackpropDataParams; @@ -18,7 +17,7 @@ std::string QuantConvBackpropDataLayerTest::getTestCaseName(const testing::TestP std::vector padBegin, padEnd; size_t convOutChannels; size_t quantLevels; - QuantizationGranularity quantGranularity; + ov::test::utils::QuantizationGranularity quantGranularity; std::tie(kernel, stride, padBegin, padEnd, dilation, convOutChannels, padType, quantLevels, quantGranularity) = groupConvBackpropDataParams; std::ostringstream result; @@ -49,13 +48,13 @@ void QuantConvBackpropDataLayerTest::SetUp() { std::vector padBegin, padEnd; size_t convOutChannels; size_t quantLevels; - QuantizationGranularity quantGranularity; + ov::test::utils::QuantizationGranularity quantGranularity; std::tie(kernel, stride, padBegin, padEnd, dilation, convOutChannels, padType, quantLevels, quantGranularity) = groupConvBackpropDataParams; auto ngPrc = FuncTestUtils::PrecisionUtils::convertIE2nGraphPrc(netPrecision); ov::ParameterVector params{std::make_shared(ngPrc, ov::Shape(inputShape))}; std::vector dataFqConstShapes(inputShape.size(), 1); - if (quantGranularity == QuantizationGranularity::Perchannel) + if (quantGranularity == ov::test::utils::QuantizationGranularity::Perchannel) dataFqConstShapes[1] = inputShape[1]; auto dataFq = ngraph::builder::makeFakeQuantize(params[0], ngPrc, quantLevels, dataFqConstShapes); @@ -66,7 +65,7 @@ void QuantConvBackpropDataLayerTest::SetUp() { auto weightsNode = ngraph::builder::makeConstant(ngPrc, weightsShapes, weightsData, weightsData.empty()); std::vector weightsFqConstShapes(weightsShapes.size(), 1); - if (quantGranularity == QuantizationGranularity::Perchannel) + if (quantGranularity == ov::test::utils::QuantizationGranularity::Perchannel) weightsFqConstShapes[0] = weightsShapes[0]; auto weightsFq = ngraph::builder::makeFakeQuantize(weightsNode, ngPrc, quantLevels, weightsFqConstShapes); diff --git a/src/tests/functional/shared_test_classes/src/subgraph/quantized_group_convolution.cpp b/src/tests/functional/shared_test_classes/src/subgraph/quantized_group_convolution.cpp index da0d304a378..3bcbe610745 100644 --- a/src/tests/functional/shared_test_classes/src/subgraph/quantized_group_convolution.cpp +++ b/src/tests/functional/shared_test_classes/src/subgraph/quantized_group_convolution.cpp @@ -4,8 +4,6 @@ #include "shared_test_classes/subgraph/quantized_group_convolution.hpp" -using ngraph::helpers::QuantizationGranularity; - namespace SubgraphTestsDefinitions { std::string QuantGroupConvLayerTest::getTestCaseName(const testing::TestParamInfo& obj) { @@ -19,7 +17,7 @@ std::string QuantGroupConvLayerTest::getTestCaseName(const testing::TestParamInf std::vector padBegin, padEnd; size_t convOutChannels, numGroups; size_t quantLevels; - QuantizationGranularity quantGranularity; + ov::test::utils::QuantizationGranularity quantGranularity; bool quantizeWeights; std::tie(kernel, stride, padBegin, padEnd, dilation, convOutChannels, numGroups, quantLevels, quantGranularity, quantizeWeights) = groupConvParams; @@ -53,14 +51,14 @@ void QuantGroupConvLayerTest::SetUp() { std::vector padBegin, padEnd; size_t convOutChannels, numGroups; size_t quantLevels; - size_t quantGranularity; + ov::test::utils::QuantizationGranularity quantGranularity; bool quantizeWeights; std::tie(kernel, stride, padBegin, padEnd, dilation, convOutChannels, numGroups, quantLevels, quantGranularity, quantizeWeights) = groupConvParams; auto ngPrc = FuncTestUtils::PrecisionUtils::convertIE2nGraphPrc(netPrecision); ov::ParameterVector params{std::make_shared(ngPrc, ov::Shape(inputShape))}; std::vector dataFqConstShapes(inputShape.size(), 1); - if (quantGranularity == QuantizationGranularity::Perchannel) + if (quantGranularity == ov::test::utils::QuantizationGranularity::Perchannel) dataFqConstShapes[1] = inputShape[1]; auto dataFq = ngraph::builder::makeFakeQuantize(params[0], ngPrc, quantLevels, dataFqConstShapes); @@ -76,7 +74,7 @@ void QuantGroupConvLayerTest::SetUp() { auto weightsNode = ngraph::builder::makeConstant(ngPrc, weightsShapes, weightsData, weightsData.empty()); std::vector weightsFqConstShapes(weightsShapes.size(), 1); - if (quantGranularity == QuantizationGranularity::Perchannel) + if (quantGranularity == ov::test::utils::QuantizationGranularity::Perchannel) weightsFqConstShapes[0] = weightsShapes[0]; std::shared_ptr weights; diff --git a/src/tests/functional/shared_test_classes/src/subgraph/quantized_group_convolution_backprop_data.cpp b/src/tests/functional/shared_test_classes/src/subgraph/quantized_group_convolution_backprop_data.cpp index 3c399b0335d..7e95b6de3ac 100644 --- a/src/tests/functional/shared_test_classes/src/subgraph/quantized_group_convolution_backprop_data.cpp +++ b/src/tests/functional/shared_test_classes/src/subgraph/quantized_group_convolution_backprop_data.cpp @@ -5,7 +5,6 @@ #include "shared_test_classes/subgraph/quantized_group_convolution_backprop_data.hpp" namespace SubgraphTestsDefinitions { -using ngraph::helpers::QuantizationGranularity; std::string QuantGroupConvBackpropDataLayerTest::getTestCaseName(const testing::TestParamInfo& obj) { quantGroupConvBackpropDataSpecificParams groupConvBackpropDataParams; @@ -18,7 +17,7 @@ std::string QuantGroupConvBackpropDataLayerTest::getTestCaseName(const testing:: std::vector padBegin, padEnd; size_t convOutChannels, numGroups; size_t quantLevels; - QuantizationGranularity quantGranularity; + ov::test::utils::QuantizationGranularity quantGranularity; std::tie(kernel, stride, padBegin, padEnd, dilation, convOutChannels, numGroups, padType, quantLevels, quantGranularity) = groupConvBackpropDataParams; std::ostringstream result; @@ -50,13 +49,13 @@ void QuantGroupConvBackpropDataLayerTest::SetUp() { std::vector padBegin, padEnd; size_t convOutChannels, numGroups; size_t quantLevels; - QuantizationGranularity quantGranularity; + ov::test::utils::QuantizationGranularity quantGranularity; std::tie(kernel, stride, padBegin, padEnd, dilation, convOutChannels, numGroups, padType, quantLevels, quantGranularity) = groupConvBackpropDataParams; auto ngPrc = FuncTestUtils::PrecisionUtils::convertIE2nGraphPrc(netPrecision); ov::ParameterVector params{std::make_shared(ngPrc, ov::Shape(inputShape))}; std::vector dataFqConstShapes(inputShape.size(), 1); - if (quantGranularity == QuantizationGranularity::Perchannel) + if (quantGranularity == ov::test::utils::QuantizationGranularity::Perchannel) dataFqConstShapes[1] = inputShape[1]; auto dataFq = ngraph::builder::makeFakeQuantize(params[0], ngPrc, quantLevels, dataFqConstShapes); @@ -72,7 +71,7 @@ void QuantGroupConvBackpropDataLayerTest::SetUp() { auto weightsNode = ngraph::builder::makeConstant(ngPrc, weightsShapes, weightsData, weightsData.empty()); std::vector weightsFqConstShapes(weightsShapes.size(), 1); - if (quantGranularity == QuantizationGranularity::Perchannel) + if (quantGranularity == ov::test::utils::QuantizationGranularity::Perchannel) weightsFqConstShapes[0] = weightsShapes[0]; auto weightsFq = ngraph::builder::makeFakeQuantize(weightsNode, ngPrc, quantLevels, weightsFqConstShapes); diff --git a/src/tests/functional/shared_test_classes/src/subgraph/quantized_mat_mul.cpp b/src/tests/functional/shared_test_classes/src/subgraph/quantized_mat_mul.cpp index 8221f451b24..0b77c5ce402 100644 --- a/src/tests/functional/shared_test_classes/src/subgraph/quantized_mat_mul.cpp +++ b/src/tests/functional/shared_test_classes/src/subgraph/quantized_mat_mul.cpp @@ -7,8 +7,6 @@ namespace SubgraphTestsDefinitions { -using ngraph::helpers::QuantizationGranularity; - std::string QuantMatMulTest::getTestCaseName(const testing::TestParamInfo &obj) { QuantParams quantParams0; QuantParams quantParams1; @@ -24,8 +22,8 @@ std::string QuantMatMulTest::getTestCaseName(const testing::TestParamInfo(ngPrc, ov::Shape(inputShape1))}; auto makeFakeQuantizeNode = [ngPrc](size_t quantLevels, QuantRange inputRange, QuantRange outputRange, - QuantizationGranularity quantGranularity, const ngraph::Output &in, std::vector inputShape, + ov::test::utils::QuantizationGranularity quantGranularity, const ngraph::Output &in, std::vector inputShape, InferenceEngine::Precision prec) -> std::shared_ptr { std::vector dataFqConstShapes(inputShape.size(), 1); - if (quantGranularity == QuantizationGranularity::Perchannel) + if (quantGranularity == ov::test::utils::QuantizationGranularity::Perchannel) dataFqConstShapes[1] = inputShape[1]; size_t constDataSize = ngraph::shape_size(dataFqConstShapes); std::vector inputLowData(constDataSize), inputHighData(constDataSize), outputLowData(constDataSize), outputHighData(constDataSize); diff --git a/src/tests/ov_helpers/ov_models/include/ov_models/utils/ov_helpers.hpp b/src/tests/ov_helpers/ov_models/include/ov_models/utils/ov_helpers.hpp index 0fb1c8f1594..90eb4c4ad75 100644 --- a/src/tests/ov_helpers/ov_models/include/ov_models/utils/ov_helpers.hpp +++ b/src/tests/ov_helpers/ov_models/include/ov_models/utils/ov_helpers.hpp @@ -80,11 +80,6 @@ using ov::test::utils::LogicalTypes; using ov::test::utils::SqueezeOpType; using ov::test::utils::MinMaxOpType; -enum QuantizationGranularity { - Pertensor, - Perchannel -}; - using ov::test::utils::TensorIteratorBody; using ov::test::utils::ReductionType; using ov::test::utils::DFTOpType; @@ -92,27 +87,11 @@ using ov::test::utils::InputLayerType; using ov::test::utils::PadMode; using ov::test::utils::SequenceTestsMode; using ov::test::utils::MemoryTransformation; +using ov::test::utils::QuantizationGranularity; // clang-format on bool is_tensor_iterator_exist(const std::shared_ptr& func); -inline std::string quantizationGranularityToString(const QuantizationGranularity& granularity) { - static std::map names = { - {Pertensor, "Pertensor"}, - {Perchannel, "Perchannel"}, - }; - - auto i = names.find(granularity); - if (i != names.end()) - return i->second; - else - throw std::runtime_error("Unsupported QuantizationGranularity type"); -} - -inline std::ostream& operator<<(std::ostream& out, const QuantizationGranularity& granularity) { - return out << quantizationGranularityToString(granularity); -} - ngraph::OutputVector convert2OutputVector(const std::vector>& nodes); template diff --git a/src/tests/test_utils/common_test_utils/include/common_test_utils/test_enums.hpp b/src/tests/test_utils/common_test_utils/include/common_test_utils/test_enums.hpp index 0f192fcfa2f..56fb77004da 100644 --- a/src/tests/test_utils/common_test_utils/include/common_test_utils/test_enums.hpp +++ b/src/tests/test_utils/common_test_utils/include/common_test_utils/test_enums.hpp @@ -206,6 +206,8 @@ std::ostream& operator<<(std::ostream& os, ov::op::v8::MatrixNms::DecayFunction std::ostream& operator<<(std::ostream& os, TensorIteratorBody type); +std::ostream& operator<<(std::ostream& os, QuantizationGranularity type); + std::ostream& operator<<(std::ostream& os, MemoryTransformation type); } // namespace utils