Remove extra model
from CompiledModelDesc
Use `get_runtime_model()` instead
This commit is contained in:
parent
5ec67f3aa9
commit
fb07fd7b82
@ -401,7 +401,6 @@ ov::hetero::CompiledModel::CompiledModel(const std::shared_ptr<ov::Model>& model
|
|||||||
subgraph._sinks,
|
subgraph._sinks,
|
||||||
subgraph._parameters,
|
subgraph._parameters,
|
||||||
m_name + '_' + std::to_string(id));
|
m_name + '_' + std::to_string(id));
|
||||||
m_compiled_submodels[id].model = subFunctions[id]->clone();
|
|
||||||
|
|
||||||
auto metaDevices = get_hetero_plugin()->get_properties_per_device(m_compiled_submodels[id].device,
|
auto metaDevices = get_hetero_plugin()->get_properties_per_device(m_compiled_submodels[id].device,
|
||||||
m_cfg.get_device_properties());
|
m_cfg.get_device_properties());
|
||||||
@ -410,7 +409,7 @@ ov::hetero::CompiledModel::CompiledModel(const std::shared_ptr<ov::Model>& model
|
|||||||
auto device_config = metaDevices[m_compiled_submodels[id].device];
|
auto device_config = metaDevices[m_compiled_submodels[id].device];
|
||||||
device_config[ov::cache_dir.name()] = "";
|
device_config[ov::cache_dir.name()] = "";
|
||||||
|
|
||||||
m_compiled_submodels[id].compiled_model = plugin->get_core()->compile_model(m_compiled_submodels[id].model,
|
m_compiled_submodels[id].compiled_model = plugin->get_core()->compile_model(subFunctions[id]->clone(),
|
||||||
m_compiled_submodels[id].device,
|
m_compiled_submodels[id].device,
|
||||||
device_config);
|
device_config);
|
||||||
++id;
|
++id;
|
||||||
@ -457,7 +456,6 @@ ov::hetero::CompiledModel::CompiledModel(std::istream& model,
|
|||||||
auto& loadConfig = metaDevices[device];
|
auto& loadConfig = metaDevices[device];
|
||||||
|
|
||||||
ov::SoPtr<ov::ICompiledModel> compiled_model;
|
ov::SoPtr<ov::ICompiledModel> compiled_model;
|
||||||
std::shared_ptr<ov::Model> ov_model;
|
|
||||||
|
|
||||||
if (get_plugin()->get_core()->device_supports_model_caching(device)) {
|
if (get_plugin()->get_core()->device_supports_model_caching(device)) {
|
||||||
compiled_model = plugin->get_core()->import_model(model, device, loadConfig);
|
compiled_model = plugin->get_core()->import_model(model, device, loadConfig);
|
||||||
@ -477,13 +475,12 @@ ov::hetero::CompiledModel::CompiledModel(std::istream& model,
|
|||||||
model.read(weights.data<char>(), dataSize);
|
model.read(weights.data<char>(), dataSize);
|
||||||
}
|
}
|
||||||
|
|
||||||
ov_model = plugin->get_core()->read_model(xmlString, weights);
|
auto ov_model = plugin->get_core()->read_model(xmlString, weights);
|
||||||
compiled_model = plugin->get_core()->compile_model(ov_model, device, loadConfig);
|
compiled_model = plugin->get_core()->compile_model(ov_model, device, loadConfig);
|
||||||
}
|
}
|
||||||
|
|
||||||
m_compiled_submodels.emplace_back(ov::hetero::CompiledModel::CompiledModelDesc{
|
m_compiled_submodels.emplace_back(ov::hetero::CompiledModel::CompiledModelDesc{
|
||||||
device,
|
device,
|
||||||
ov_model,
|
|
||||||
compiled_model,
|
compiled_model,
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
@ -690,7 +687,7 @@ void ov::hetero::CompiledModel::export_model(std::ostream& model_stream) const {
|
|||||||
if (get_plugin()->get_core()->device_supports_model_caching(comp_model_desc.device)) {
|
if (get_plugin()->get_core()->device_supports_model_caching(comp_model_desc.device)) {
|
||||||
comp_model_desc.compiled_model->export_model(model_stream);
|
comp_model_desc.compiled_model->export_model(model_stream);
|
||||||
} else {
|
} else {
|
||||||
auto model = comp_model_desc.model;
|
auto model = std::const_pointer_cast<ov::Model>(comp_model_desc.compiled_model->get_runtime_model());
|
||||||
if (!model)
|
if (!model)
|
||||||
OPENVINO_THROW("OpenVINO Model is empty");
|
OPENVINO_THROW("OpenVINO Model is empty");
|
||||||
|
|
||||||
|
@ -60,7 +60,6 @@ private:
|
|||||||
|
|
||||||
struct CompiledModelDesc {
|
struct CompiledModelDesc {
|
||||||
std::string device;
|
std::string device;
|
||||||
std::shared_ptr<ov::Model> model;
|
|
||||||
ov::SoPtr<ov::ICompiledModel> compiled_model;
|
ov::SoPtr<ov::ICompiledModel> compiled_model;
|
||||||
};
|
};
|
||||||
std::vector<CompiledModelDesc> m_compiled_submodels;
|
std::vector<CompiledModelDesc> m_compiled_submodels;
|
||||||
|
Loading…
Reference in New Issue
Block a user