Intel® Distribution of OpenVINO™ Toolkit
Community assistance about the Intel® Distribution of OpenVINO™ toolkit, OpenCV, and all aspects of computer vision-related on Intel® platforms.

CPU extension non-portable

Jordan_S_1
Beginner
853 Views

Hi,

I have a Windows 10 laptop that I build an application that runs OpenVino inference engine. However, when I move this application to a Windows 10 tablet the application crashes straight away. I have narrowed this down to cpu_extension.dll. If I use the DLL of openVino built on the tablet itself, it is fine. 

Is there a way to create the cpu_extension.dll on my laptop such that it is portable to the tablet? 

0 Kudos
4 Replies
Shubha_R_Intel
Employee
853 Views

Dear Jordan,

Does your Windows 10 tablet run ARM or Intel X86 ? OpenVino is not supported on all Intel processors. There is also a GPU dependency.

Please read this:

https://github.com/intel/compute-runtime/blob/master/README.md

https://software.intel.com/en-us/openvino-toolkit/hardware

Thanks,

Shubha

0 Kudos
Jordan_S_1
Beginner
853 Views

Hi Shubha,

It is an Intel tablet. We can run OpenVino on it. But we need to use the cpu extension built on the tablet itself in the OpenVino samples.

Thanks,

Jordan

0 Kudos
Shubha_R_Intel
Employee
853 Views

Dear Jordan,

I understand. If you study the source code that goes into building cpu_extensions.dll,  the answer to your question can be found in C:\Program Files (x86)\IntelSWTools\openvino_2019.1.087\deployment_tools\inference_engine\src\extension\cmake\CPUID.cmake . Reading the CPUID plays a role in building cpu_extensions.dll . So if you build that DLL on your laptop, there is no way it can work on your tablet, unless you modify that file somehow (which I don't suggest).

To experiment with such things, I'd rather you go for the dldt  github:

https://github.com/opencv/dldt/tree/2019

I'm sure it's possible to build on the laptop and transfer the cpu_extensions.dll onto your tablet, but you'd have to hardcode stuff which the CPUID command automatically returns.

Hope it helps

Thanks for using OpenVino

Shubha

0 Kudos
Wong__Jeremy
Beginner
853 Views

Dear Jordan,

 

I guess that your tablet is using Intel ATOM processor which supports SSE instruction set only, while your desktop computer is using modern CPU which supports AVX2 instruction set / AVX512 instruction set. In my computer, the file name of the CPU extension is "cpu_extension_avx2.dll" which suggests that the DLL file is for processors supporting AVX2 instruction set. How's yours?

0 Kudos
Reply