- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I am upgrading OpenVino from 2022.3.1 to 2023.3 and am getting a "list iterators incompatible" error when executing compile_model().
The app runs as expected with 2022.3.1.
Microsoft Visual Studio Enterprise 2022 (64-bit) - Current
Version 17.9.2
after selecting ignore
Call stack. The entire call stack is attached.
Code:
m_model = core.read_model(strModel,ov::Tensor(ov::element::u8, { vecModelWeights.size() }, m_modelWeights.get()));
m_compiled_model = core.compile_model(m_model, "CPU");
All 2022 debug openvino and tbb dll/lib files were replaced with 2023.3 dll/lib files.
Intel's OpenVino API for 2023.3 compile_model link.
Intel's OpenVino API for 2022.3 compile_model link.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Since 2023.3 specifies MSVC 2019 and 2024.2 specifies MSVC 2022, and the fact that 2024.2 isn't causing us any issues, we decided to go with 2024.2 and hope that the LTS version is coming soon.
Thanks for your help
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Eddie_Patton,
Thanks for reaching out.
The issue is related to the C++ Runtime Library within your Microsoft Visual Studio. OpenVINO 2023.3 does not support Microsoft Visual Studio Enterprise 2022. Only Microsoft Visual Studio 2019 is supported with OpenVINO 2023.3.
You may check the System Requirement.
Regards,
Aznie
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Aznie
What's odd because OpenVino 2022.3 system requirements also state VS 2019, but it runs fine on VS 2022.
And I have a version of OpenVino 2024.2 who's system requirements also state VS 2019 but is running on VS 2022 OK.
But I need 2023.3 because it is LTS for our product release.
Multiple engineers here are using VS 2022 and have no issues running OpenVino 2022.3 and 2024.2.
Shouldn't the openvino dlls, if built with vs 2019 build tools, be compatible with apps built using 2022 build tools?
Thx for your help.
More info:
When I select "ignore" in the debugger assert window, the next breakpoint is in invalid_parameter.cpp
where
expression = "list interators incompatible:
function name = std::_List_const_iterator<class std::_List_val<struct std::_List_simple_types<class std::shared_ptr<class ov::snippets::lowered::Expression> > > >::operator ==
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Eddie_Patton,
It might work with VS 2022 but our engineering team does not officially validate it. From your callstack the OpenVINO cpu dll files are missing. Could you run dependency walker on Windows 10 or binscan or ldd on Linux to detect missing dependencies?
Otherwise, you may try to reinstall everything including the Visual Studio. Please try with VS 2019.
Regards,
Aznie
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Aznie
Thanks for the reply
Re: "From your callstack the OpenVINO cpu dll files are missing."
For my own edification, could you point me to the line in the callstack.txt file that shows this? I'm used to seeing "FileNotFoundException" error when this happens.
Much appreciated.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Eddie_Patton,
The openvino_intel_cpu_plugind.dll!00007ffe3477d87d() Unknown means something is missing or undetected in your system. Please run Dependency Walker to find the missing dll and reallocate them to the correct folder/path.
It is recommended to reinstall and follow the system requirements.
Hope this helps.
Regards,
Aznie
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Aznie
I thought I'd test what happens if I intentionally removed a dll. I ran the same code but with the openvino_intel_cpu_plugind.dll missing. In this case, the try/catch error message wrapped around compile_model() is
Exception from src\inference\src\core.cpp:102:
Exception from src\inference\src\dev\core_impl.cpp:560:
Device with "CPU" name is not registered in the OpenVINO Runtime
So I think that the stack output such as
openvino_intel_cpu_plugind.dll!00007ffe3477d87d() Unknown
means that the debug symbols are not available. In the above, "00007ffe3477d87d()" is the address of the function in openvino_intel_cpu_plugind library. The "Unknown" would be the function line number, etc.
So in order to get the function name and other info, isn't a pdb file required?
I'll still try the dependency walker, but I think the call stack is just showing us that the debug symbols are not present.
Cheers
Eddie
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Eddie,
How did you install your OpenVINO before? I highly recommend you reinstall OpenVINO™ 2023.2.0 from the archive file again and run the Hello Query Device sample to verify all the available devices.
Regards,
Aznie
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Another datapoint:
In the call stack, tbb12_debug.dll is called. I removed it from the x64 directory and got this error (the familiar and useless EEFileLoadException).
'SysApp.exe' (Win32): Unloaded 'C:\FFSS\debug\Phx\x64\Host_G5\SysApp\msvcp140d.dll'
'SysApp.exe' (Win32): Unloaded 'C:\FFSS\debug\Phx\x64\Host_G5\SysApp\AppInit.dll'
Exception thrown at 0x00007FFF77E4CF19 in SysApp.exe: Microsoft C++ exception: EEFileLoadException at memory location 0x0000007F577FC178.
Exception thrown at 0x00007FFF77E4CF19 in SysApp.exe: Microsoft C++ exception: [rethrow] at memory location 0x0000000000000000.
Exception thrown at 0x00007FFF77E4CF19 in SysApp.exe: Microsoft C++ exception: EEFileLoadException at memory location 0x0000007F577FC178.
As per how did I install before, I followed these instructions:
which are identical to
https://docs.openvino.ai/2023.3/openvino_docs_install_guides_installing_openvino_from_archive_windows.html
And then used Beyond Compare to copy all files to our products source code folder. Then in MSVC, we use the properties "Copy File" feature to put the dll in our x64 directory that has our app executable.
I also used Beyond Compare to ensure the dll dates and sizes in C:\Program Files (x86)\Intel\openvino_2023.3.0 match the dlls in the x64 directory.
I'll download the archive again and redo the process.
I see that there's an option to build from source. At least that way I'll have the debug info
https://github.com/openvinotoolkit/openvino/blob/master/docs/dev/build.md
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Eddie_Patton,
Yes, you may also try to build OpenVINO from the source following the documentation.
Regards,
Aznie
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Since 2023.3 specifies MSVC 2019 and 2024.2 specifies MSVC 2022, and the fact that 2024.2 isn't causing us any issues, we decided to go with 2024.2 and hope that the LTS version is coming soon.
Thanks for your help
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Eddie_Paton,
This thread will no longer be monitored since this issue has been resolved. If you need any additional information from Intel, please submit a new question.
Regards,
Aznie
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page