diff --git a/src/plugins/auto/plugin.cpp b/src/plugins/auto/plugin.cpp index 9a039656b00..2df473bfd05 100644 --- a/src/plugins/auto/plugin.cpp +++ b/src/plugins/auto/plugin.cpp @@ -635,23 +635,22 @@ QueryNetworkResult MultiDeviceInferencePlugin::QueryNetwork(const CNNNetwork& queryconfig.UpdateFromMap(config, GetName(), true); auto fullConfig = queryconfig._keyConfigMap; auto priorities = fullConfig.find(MultiDeviceConfigParams::KEY_MULTI_DEVICE_PRIORITIES); - if (priorities->second.empty()) { - IE_THROW() << "KEY_MULTI_DEVICE_PRIORITIES key is not set for " << GetName() << " device"; - } - auto metaDevices = ParseMetaDevices(priorities->second, fullConfig); - std::unordered_set supportedLayers; - for (auto&& value : metaDevices) { - auto deviceQr = GetCore()->QueryNetwork(network, value.deviceName, value.config); - std::unordered_set deviceSupportedLayers; - for (auto&& layerQr : deviceQr.supportedLayersMap) { - deviceSupportedLayers.emplace(layerQr.first); + if (!priorities->second.empty()) { + auto metaDevices = ParseMetaDevices(priorities->second, fullConfig); + std::unordered_set supportedLayers; + for (auto&& value : metaDevices) { + auto deviceQr = GetCore()->QueryNetwork(network, value.deviceName, value.config); + std::unordered_set deviceSupportedLayers; + for (auto&& layerQr : deviceQr.supportedLayersMap) { + deviceSupportedLayers.emplace(layerQr.first); + } + supportedLayers = supportedLayers.empty() + ? deviceSupportedLayers : (deviceSupportedLayers.empty() + ? supportedLayers : InferenceEngine::details::Intersection(supportedLayers, deviceSupportedLayers)); + } + for (auto&& supportedLayer : supportedLayers) { + queryResult.supportedLayersMap[supportedLayer] = GetName(); } - supportedLayers = supportedLayers.empty() - ? deviceSupportedLayers : (deviceSupportedLayers.empty() - ? supportedLayers : InferenceEngine::details::Intersection(supportedLayers, deviceSupportedLayers)); - } - for (auto&& supportedLayer : supportedLayers) { - queryResult.supportedLayersMap[supportedLayer] = GetName(); } return queryResult; } diff --git a/src/plugins/intel_cpu/tests/functional/shared_tests_instances/skip_tests_config.cpp b/src/plugins/intel_cpu/tests/functional/shared_tests_instances/skip_tests_config.cpp index 649c553aef3..f7489918c1c 100644 --- a/src/plugins/intel_cpu/tests/functional/shared_tests_instances/skip_tests_config.cpp +++ b/src/plugins/intel_cpu/tests/functional/shared_tests_instances/skip_tests_config.cpp @@ -169,8 +169,9 @@ std::vector disabledTestPatterns() { // Issue: 95590 R"(.*CachingSupportCase.*CompileModelCacheTestBase.*(TIwithLSTMcell1|MatMulBias|2InputSubtract)_(u|i).*)", // Issue: 95607 - R"(.*OVClass.*QueryNetwork.*QueryNetwork.*)", - R"(.*OVClass.*LoadNetwork*(HETERO|MULTI).*)", + R"(.*OVClass.*LoadNetwork.*LoadNetwork(HETEROAndDeviceIDThrows|MULTIwithAUTONoThrow|HETEROwithMULTINoThrow|MULTIwithHETERONoThrow).*)", + R"(.*OVClass.*LoadNetwork.*LoadNetwork(HETEROWithDeviceIDNoThrow|WithDeviceID|WithBigDeviceIDThrows|WithInvalidDeviceIDThrows|HETEROWithBigDeviceIDThrows).*)", + R"(.*OVClass.*QueryNetwork.*QueryNetwork(HETEROWithDeviceIDNoThrow|WithDeviceID|WithBigDeviceIDThrows|WithInvalidDeviceIDThrows|HETEROWithBigDeviceIDThrows).*)", R"(.*OVClass.*LoadNetwork.*(DeviceID|MultiWithoutSettingDevicePrioritiesThrows).*)", R"(.*OVClassLoadNetworkTest.*QueryNetwork(MULTIWithHETERO|HETEROWithMULTI)NoThrow_V10.*)", R"(.*OVClassNetworkTestP.*QueryNetworkMultiThrows.*)", diff --git a/src/tests/functional/plugin/gpu/shared_tests_instances/skip_tests_config.cpp b/src/tests/functional/plugin/gpu/shared_tests_instances/skip_tests_config.cpp index 2891b009508..578c007e191 100644 --- a/src/tests/functional/plugin/gpu/shared_tests_instances/skip_tests_config.cpp +++ b/src/tests/functional/plugin/gpu/shared_tests_instances/skip_tests_config.cpp @@ -116,8 +116,6 @@ std::vector disabledTestPatterns() { R"(.*smoke_select_CompareWithRefsNumpy_dynamic_range.*)", // Issue: 90183 R"(.*VirtualPlugin.*BehaviorTests.*OVHoldersTestWithConfig.*LoadedTensor.*target_device=MULTI.*)", - // Issue: 95618 - R"(.*OVClassLoadNetworkTest.*OVClassLoadNetworkTest.*QueryNetworkMULTIWithHETERONoThrow_V10.*)", R"(.*CachingSupportCase.*LoadNetworkCacheTestBase.*CompareWithRefImpl.*)", #if defined(_WIN32) || defined(_WIN64) R"(.*Auto_KernelCachingSupportCase.*CanCreateCacheDirAndDumpBinariesUnicodePath.*)", diff --git a/src/tests/functional/plugin/shared/include/behavior/ov_plugin/core_integration.hpp b/src/tests/functional/plugin/shared/include/behavior/ov_plugin/core_integration.hpp index b8675ca9eec..b427f9b5422 100644 --- a/src/tests/functional/plugin/shared/include/behavior/ov_plugin/core_integration.hpp +++ b/src/tests/functional/plugin/shared/include/behavior/ov_plugin/core_integration.hpp @@ -1296,7 +1296,7 @@ TEST_P(OVClassLoadNetworkTest, QueryNetworkMULTIWithHETERONoThrow_V10) { std::string devices; auto availableDevices = ie.get_property(target_device, ov::available_devices); for (auto&& device : availableDevices) { - devices += std::string(CommonTestUtils::DEVICE_HETERO) + "." + target_device; + devices += std::string(CommonTestUtils::DEVICE_HETERO) + "." + device; if (&device != &(availableDevices.back())) { devices += ','; }