- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello,
I have a Windows IoT application using inference engine 2018 r3. I built inference engine dlls on a different machine and installed Intel C++ redistributables (w_ccompxe_redist_intel64_2011.13.371.msi) as well as Visual C++ 2017 redistributables and it was working all fine using Movidius stick.
Now I updated the OpenVino version to 2018 r5, built inference engine dlls on the same machine as before following same procedure and I deployed the application to the target machine only to see that it crashes because it can't load inference_engine.dll correctly. Application runs correctly on a development machine. I then also tried running classification_sample.exe from 2018 r5 and it too fails (2018 r3 works correctly) on the target machine.
Are there any extra dependencies required for 2018 r5 in comparison to 2018 r3? I went though release notes but it doesn't seem to mention any.
Thanks
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I managed to find a workaround for this problem.
My target device (on-board computer) has Intel Atom E3827. As I said in the first post, when using OpenVINO 2018 r3 I have built the samples (and cpu_extension.dll) on my dev machine which has i7-8700, the dll has worked correctly on the target device (after installing w_ccompxe_redist_intel64_2011.13.371.msi on it). Now I have followed the same process but it was no longer working. As a workaround I have installed OpenVINO on the target device and generated the Visual Studio solution using it. The resulting set of pre-processor directives for samples and ie_cpu_extension was a lot different to the one generated on dev machine with i7-8700. After copying all pre-processor directives from target device to dev machine I was able to build the dlls on dev machine and run on target machine.
Now, as far I understand when dll is compiled against different set of cpu instructions that the target machine, the redistributable package should handle it. Why it doesn't work in this case? This is a regression of compatibility.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello wsla,
Thanks for posting solution. I have spend a lot of time on converting exe to dll without success. It's good to know that you have it working. Could you take a quick look at the following steps to see if I missed anything?
Step 1: Build a c# DLL project: I follow the procedure from https://docs.microsoft.com/en-us/cpp/build/walkthrough-creating-and-using-a-dynamic-link-library-cpp?view=vs-2017
Step 2: Copy configure setting from a sample program to DLL.
Step 3: copy pre-processor directives and codes from the sample program to a DLL function.
The issue is on the function: findPlugin({ device }, result, &desc). The return on this function with corrupted results.
Environment:
windows 10, vs2017, openvino R5.
Thanks,
Terry
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I had the same problem and I solved it in this way:
In the Sample solution of R5 I changed some options in Project Options of ie_cpu_extension:
Properties -> Configuration Properties -> C/C++ -> Code Generation
here I modified Enable Enhanced Istruction Set from AVX2 to "Not Set"
and I re-build the dll.

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page