diff --git a/src/ov_utils.cpp b/src/ov_utils.cpp index 92ac74a168..11f9215e77 100644 --- a/src/ov_utils.cpp +++ b/src/ov_utils.cpp @@ -135,6 +135,9 @@ Status validatePluginConfiguration(const plugin_config_t& pluginConfig, const st } pluginSupportedConfigKeys.insert("ENABLE_MMAP"); // WA: always supported + if (targetDevice.find("CPU") != std::string::npos) { + pluginSupportedConfigKeys.insert("CPU_RUNTIME_CACHE_CAPACITY"); // WA: supported by CPU plugin but not reported in supported_properties + } for (auto& config : pluginConfig) { if (std::find(pluginSupportedConfigKeys.begin(), pluginSupportedConfigKeys.end(), config.first) == pluginSupportedConfigKeys.end()) { diff --git a/src/test/ov_utils_test.cpp b/src/test/ov_utils_test.cpp index 579426b99d..7b86e9e849 100644 --- a/src/test/ov_utils_test.cpp +++ b/src/test/ov_utils_test.cpp @@ -240,3 +240,15 @@ TEST(OVUtils, ValidatePluginConfigurationAllowEnableMmap) { auto model = ieCore.read_model(std::filesystem::current_path().u8string() + "/src/test/dummy/1/dummy.xml", {}, pluginConfig); auto compiledModel = ieCore.compile_model(model, "CPU", pluginConfig); } + +TEST(OVUtils, ValidatePluginConfigurationAllowCPURuntimeCacheCapacity) { + ov::Core ieCore; + ovms::ModelConfig config; + config.setTargetDevice("CPU"); + config.setPluginConfig({{"CPU_RUNTIME_CACHE_CAPACITY", "0"}}); + ovms::plugin_config_t pluginConfig = ovms::ModelInstance::prepareDefaultPluginConfig(config); + auto status = ovms::validatePluginConfiguration(pluginConfig, "CPU", ieCore); + EXPECT_TRUE(status.ok()); + auto model = ieCore.read_model(std::filesystem::current_path().u8string() + "/src/test/dummy/1/dummy.xml", {}, pluginConfig); + auto compiledModel = ieCore.compile_model(model, "CPU", pluginConfig); +} \ No newline at end of file