I have searched the forum but have not found the exact answer;
The requirements for OpenVino say "6th Generation" CPU required. I know this includes SSE/SSE2/SSE3/SSE4.1/SSE4.2/AVX. All of which I have on my 3rd generation CPU. I also know that there are still missing instructions that my CPU does not have all the required instructions. The inference engine uses FMA instructions;
Can somebody tell me the exact instruction sets required for CPU inference engine so I can correctly test for them. Otherwise the inference crashes with "illegal instruction". Its pretty hard to test for 6th GEN CPU by itself. What about AMD? Will it work on an AMD system that contains these instruction sets?
Some good, maybe relevant (?), information in https://software.intel.com/en-us/forums/computer-vision/topic/804289
> All of which I have on my 3rd generation CPU.
You may be able to run some networks and not others as not all parts of MKLDNN may be supported or validated in an older unsupported system.
I would try to pass unit tests and see what fails. For example on Linux
git clone https://github.com/opencv/dldt.git cd dldt/inference-engine/ git submodule init git submodule update --recursive mkdir build cd build cmake -DCMAKE_BUILD_TYPE=Release .. make -j13 ../bin/intel64/Release/InferenceEngineUnitTests
Thanks; that generally what I have observed; some models run on my old system and some don't (crash). Currently I restrict to needing AVX2 and FMA3.
What I'd really like is a compatibility mode (even just c++). Its easier to tell a customer that this "AI may run SLOW on their system and if they upgrade it will run fast" than to say "it won't run at all unless you upgrade". I'm sure the intel engineers have c++ models of their algorithms. Many of my clients are not using 6th gen CPU and this requirement will restrict them from even evaluating the features.