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.

openvx Illegal instruction (core dumped)

KLim4
Beginner
654 Views

 

dmesg show me traps: auto_contrast[3920] trap invalid opcode ip:7f7ab43aa227 sp:7ffca80121a0 error:0 in libiap.so.1.8[7f7ab3ff7000+7431000] when i run the provided openvx auto_contrast example in my centos 7 box.

may i know what is the problem?

computer_vision_sdk_2018.0.234

[root@localhost auto_contrast]# uname -a
Linux localhost.localdomain 4.14.20 #1 SMP Wed May 16 05:36:12 EDT 2018 x86_64 x86_64 x86_64 GNU/Linux

[root@localhost auto_contrast]# cat /proc/cpuinfo
processor    : 0
vendor_id    : GenuineIntel
cpu family    : 6
model        : 92
model name    : Intel(R) Celeron(R) CPU N3350 @ 1.10GHz
stepping    : 9
microcode    : 0x2c
cpu MHz        : 1524.594
cache size    : 1024 KB
physical id    : 0
siblings    : 2
core id        : 0
cpu cores    : 2
apicid        : 0
initial apicid    : 0
fpu        : yes
fpu_exception    : yes
cpuid level    : 21
wp        : yes
flags        : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc art arch_perfmon pebs bts rep_good nopl xtopology tsc_reliable nonstop_tsc cpuid aperfmperf tsc_known_freq pni pclmulqdq dtes64 ds_cpl vmx est tm2 ssse3 sdbg cx16 xtpr pdcm sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave rdrand lahf_lm 3dnowprefetch cpuid_fault cat_l2 pti tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust smep erms mpx rdt_a rdseed smap clflushopt intel_pt sha_ni xsaveopt xsavec xgetbv1 xsaves dtherm ida arat pln pts
bugs        : cpu_meltdown spectre_v1 spectre_v2
bogomips    : 2188.80
clflush size    : 64
cache_alignment    : 64
address sizes    : 39 bits physical, 48 bits virtual
power management:

processor    : 1
vendor_id    : GenuineIntel
cpu family    : 6
model        : 92
model name    : Intel(R) Celeron(R) CPU N3350 @ 1.10GHz
stepping    : 9
microcode    : 0x2c
cpu MHz        : 1835.747
cache size    : 1024 KB
physical id    : 0
siblings    : 2
core id        : 2
cpu cores    : 2
apicid        : 4
initial apicid    : 4
fpu        : yes
fpu_exception    : yes
cpuid level    : 21
wp        : yes
flags        : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc art arch_perfmon pebs bts rep_good nopl xtopology tsc_reliable nonstop_tsc cpuid aperfmperf tsc_known_freq pni pclmulqdq dtes64 ds_cpl vmx est tm2 ssse3 sdbg cx16 xtpr pdcm sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave rdrand lahf_lm 3dnowprefetch cpuid_fault cat_l2 pti tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust smep erms mpx rdt_a rdseed smap clflushopt intel_pt sha_ni xsaveopt xsavec xgetbv1 xsaves dtherm ida arat pln pts
bugs        : cpu_meltdown spectre_v1 spectre_v2
bogomips    : 2188.80
clflush size    : 64
cache_alignment    : 64
address sizes    : 39 bits physical, 48 bits virtual
power management:

 

0 Kudos
5 Replies
KLim4
Beginner
654 Views

i install ubuntu to the same hardware target and the openvx sample program gave the same Illegal instruction (core dumped)

hetero_basic crashed with SIGILL in std::map<DMIP::iNode*,DMIP::iGraph::NodeOutputInfo,std::less<DPIM::iNode*>,std::allocator<std::pair<DMIP::iNode* const, DMIP::iGraph::NodeOutputInfo>>>::map()

traps: hetero_basic[3169] trap invalid opcode ip:7f0029e03c94 sp:7ffccc753d28 error:0 in libiap.so.1.8[7f0029a3b000+7444000]

computer_vision_sdk_2018.0.234

uname -a
Linux ubuntu-UP-APL01 4.14.20-041420-generic #201802162247 SMP Fri Feb 16 22:48:07 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux

cat /proc/cpuinfo
processor    : 0
vendor_id    : GenuineIntel
cpu family    : 6
model        : 92
model name    : Intel(R) Celeron(R) CPU N3350 @ 1.10GHz
stepping    : 9
microcode    : 0x28
cpu MHz        : 1207.075
cache size    : 1024 KB
physical id    : 0
siblings    : 2
core id        : 0
cpu cores    : 2
apicid        : 0
initial apicid    : 0
fpu        : yes
fpu_exception    : yes
cpuid level    : 21
wp        : yes
flags        : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc art arch_perfmon pebs bts rep_good nopl xtopology tsc_reliable nonstop_tsc cpuid aperfmperf tsc_known_freq pni pclmulqdq dtes64 ds_cpl vmx est tm2 ssse3 sdbg cx16 xtpr pdcm sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave rdrand lahf_lm 3dnowprefetch cpuid_fault cat_l2 pti tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust smep erms mpx rdt_a rdseed smap clflushopt intel_pt sha_ni xsaveopt xsavec xgetbv1 xsaves dtherm ida arat pln pts
bugs        : cpu_meltdown spectre_v1 spectre_v2
bogomips    : 2188.80
clflush size    : 64
cache_alignment    : 64
address sizes    : 39 bits physical, 48 bits virtual
power management:

processor    : 1
vendor_id    : GenuineIntel
cpu family    : 6
model        : 92
model name    : Intel(R) Celeron(R) CPU N3350 @ 1.10GHz
stepping    : 9
microcode    : 0x28
cpu MHz        : 1161.008
cache size    : 1024 KB
physical id    : 0
siblings    : 2
core id        : 2
cpu cores    : 2
apicid        : 4
initial apicid    : 4
fpu        : yes
fpu_exception    : yes
cpuid level    : 21
wp        : yes
flags        : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc art arch_perfmon pebs bts rep_good nopl xtopology tsc_reliable nonstop_tsc cpuid aperfmperf tsc_known_freq pni pclmulqdq dtes64 ds_cpl vmx est tm2 ssse3 sdbg cx16 xtpr pdcm sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave rdrand lahf_lm 3dnowprefetch cpuid_fault cat_l2 pti tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust smep erms mpx rdt_a rdseed smap clflushopt intel_pt sha_ni xsaveopt xsavec xgetbv1 xsaves dtherm ida arat pln pts
bugs        : cpu_meltdown spectre_v1 spectre_v2
bogomips    : 2188.80
clflush size    : 64
cache_alignment    : 64
address sizes    : 39 bits physical, 48 bits virtual
power management:

 

0 Kudos
Ryan_M_Intel1
Employee
654 Views

Hi,

Most likely the reason for this is because the CV SDK installer, when running under Ubuntu, will install a version of OpenVX that has been compiled with AVX2 optimizations. Since your APL (Apollo Lake) system doesn't support this instruction set, an illegal instruction will be generated. In your case, since you are running Ubuntu on APL, I would recommend the following steps:

From where you extracted the CV SDK .tgz package (l_intel_cv_sdk_p_2018.0.234), cd to l_intel_cv_sdk_p_2018.0.234/rpm. The OpenVX binaries that you will want to use are contained within intel-cv-sdk-base-l-ovx-rt-yocto-234-2018.0-234.noarch.rpm. One way to extract this into the local directory:

rpm2cpio ./intel-cv-sdk-base-l-ovx-rt-yocto-234-2018.0-234.noarch.rpm | cpio -idmv

After running this, the openvx folder will reside within ./opt/intel/computer_vision_sdk_2018.0.234/openvx

You can then replace the openvx folder that was originally installed (at $INTEL_CVSDK_DIR) with this openvx folder. 

This should solve the issue, but let me know how it goes.

Best Regards,

Ryan

 

0 Kudos
KLim4
Beginner
654 Views

Thanks Ryan. It works after i replaced the original installed openvx with the extracted  intel-cv-sdk-base-l-ovx-rt-yocto-234-2018.0-234.noarch.rpm

 

0 Kudos
Xiaoying__Y
Beginner
654 Views
Ryan M. (Intel) wrote:

Hi,

Most likely the reason for this is because the CV SDK installer, when running under Ubuntu, will install a version of OpenVX that has been compiled with AVX2 optimizations. Since your APL (Apollo Lake) system doesn't support this instruction set, an illegal instruction will be generated. In your case, since you are running Ubuntu on APL, I would recommend the following steps:

From where you extracted the CV SDK .tgz package (l_intel_cv_sdk_p_2018.0.234), cd to l_intel_cv_sdk_p_2018.0.234/rpm. The OpenVX binaries that you will want to use are contained within intel-cv-sdk-base-l-ovx-rt-yocto-234-2018.0-234.noarch.rpm. One way to extract this into the local directory:

rpm2cpio ./intel-cv-sdk-base-l-ovx-rt-yocto-234-2018.0-234.noarch.rpm | cpio -idmv

After running this, the openvx folder will reside within ./opt/intel/computer_vision_sdk_2018.0.234/openvx

You can then replace the openvx folder that was originally installed (at $INTEL_CVSDK_DIR) with this openvx folder. 

This should solve the issue, but let me know how it goes.

Best Regards,

Ryan

 

Hi Ryan, I am trying to run openvx on Apollolake board with the latest computer_vision_sdk_2018.5.455 version, and I encontered the same problem after build the source code. ~/Desktop/OpenVX_build/bin/color_copy_pipeline$ ./color_copy_pipeline Illegal instruction (core dumped) I followed the instruction you wrote above as to use intel-openvx_ubuntu-2018.5.455-2018.5-455.noarch.rpm to replace the installed one. But it still failed to execute. Any idea for this? Thank you in advance for your time and help. Xiaoying. Log: -- Linux xiaoying 4.15.0-45-generic #48-Ubuntu SMP Tue Jan 29 16:28:13 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux -- cat /proc/cpuinfo processor : 0 vendor_id : GenuineIntel cpu family : 6 model : 92 model name : Intel(R) Atom(TM) Processor E3950 @ 1.60GHz stepping : 10 microcode : 0xc cpu MHz : 1991.745 cache size : 1024 KB physical id : 0 siblings : 4 core id : 0 cpu cores : 4 apicid : 0 initial apicid : 0 fpu : yes fpu_exception : yes cpuid level : 21 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc art arch_perfmon pebs bts rep_good nopl xtopology tsc_reliable nonstop_tsc cpuid aperfmperf tsc_known_freq pni pclmulqdq dtes64 ds_cpl vmx est tm2 ssse3 sdbg cx16 xtpr pdcm sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave rdrand lahf_lm 3dnowprefetch cpuid_fault cat_l2 ssbd ibrs ibpb stibp tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust smep erms mpx rdt_a rdseed smap clflushopt intel_pt sha_ni xsaveopt xsavec xgetbv1 xsaves dtherm ida arat pln pts arch_capabilities bugs : spectre_v1 spectre_v2 spec_store_bypass bogomips : 3187.20 clflush size : 64 cache_alignment : 64 address sizes : 39 bits physical, 48 bits virtual power management: processor : 1 vendor_id : GenuineIntel cpu family : 6 model : 92 model name : Intel(R) Atom(TM) Processor E3950 @ 1.60GHz stepping : 10 microcode : 0xc cpu MHz : 1991.880 cache size : 1024 KB physical id : 0 siblings : 4 core id : 1 cpu cores : 4 apicid : 2 initial apicid : 2 fpu : yes fpu_exception : yes cpuid level : 21 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc art arch_perfmon pebs bts rep_good nopl xtopology tsc_reliable nonstop_tsc cpuid aperfmperf tsc_known_freq pni pclmulqdq dtes64 ds_cpl vmx est tm2 ssse3 sdbg cx16 xtpr pdcm sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave rdrand lahf_lm 3dnowprefetch cpuid_fault cat_l2 ssbd ibrs ibpb stibp tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust smep erms mpx rdt_a rdseed smap clflushopt intel_pt sha_ni xsaveopt xsavec xgetbv1 xsaves dtherm ida arat pln pts arch_capabilities bugs : spectre_v1 spectre_v2 spec_store_bypass bogomips : 3187.20 clflush size : 64 cache_alignment : 64 address sizes : 39 bits physical, 48 bits virtual power management: processor : 2 vendor_id : GenuineIntel cpu family : 6 model : 92 model name : Intel(R) Atom(TM) Processor E3950 @ 1.60GHz stepping : 10 microcode : 0xc cpu MHz : 1991.783 cache size : 1024 KB physical id : 0 siblings : 4 core id : 2 cpu cores : 4 apicid : 4 initial apicid : 4 fpu : yes fpu_exception : yes cpuid level : 21 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc art arch_perfmon pebs bts rep_good nopl xtopology tsc_reliable nonstop_tsc cpuid aperfmperf tsc_known_freq pni pclmulqdq dtes64 ds_cpl vmx est tm2 ssse3 sdbg cx16 xtpr pdcm sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave rdrand lahf_lm 3dnowprefetch cpuid_fault cat_l2 ssbd ibrs ibpb stibp tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust smep erms mpx rdt_a rdseed smap clflushopt intel_pt sha_ni xsaveopt xsavec xgetbv1 xsaves dtherm ida arat pln pts arch_capabilities bugs : spectre_v1 spectre_v2 spec_store_bypass bogomips : 3187.20 clflush size : 64 cache_alignment : 64 address sizes : 39 bits physical, 48 bits virtual power management: processor : 3 vendor_id : GenuineIntel cpu family : 6 model : 92 model name : Intel(R) Atom(TM) Processor E3950 @ 1.60GHz stepping : 10 microcode : 0xc cpu MHz : 1991.783 cache size : 1024 KB physical id : 0 siblings : 4 core id : 3 cpu cores : 4 apicid : 6 initial apicid : 6 fpu : yes fpu_exception : yes cpuid level : 21 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc art arch_perfmon pebs bts rep_good nopl xtopology tsc_reliable nonstop_tsc cpuid aperfmperf tsc_known_freq pni pclmulqdq dtes64 ds_cpl vmx est tm2 ssse3 sdbg cx16 xtpr pdcm sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave rdrand lahf_lm 3dnowprefetch cpuid_fault cat_l2 ssbd ibrs ibpb stibp tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust smep erms mpx rdt_a rdseed smap clflushopt intel_pt sha_ni xsaveopt xsavec xgetbv1 xsaves dtherm ida arat pln pts arch_capabilities bugs : spectre_v1 spectre_v2 spec_store_bypass bogomips : 3187.20 clflush size : 64 cache_alignment : 64 address sizes : 39 bits physical, 48 bits virtual power management:
0 Kudos
Ryan_M_Intel1
Employee
654 Views

Hi Xiaoying,

My apologies... I must have missed this question when it was posted. 

I followed the instruction you wrote above as to use
intel-openvx_ubuntu-2018.5.455-2018.5-455.noarch.rpm to replace
the installed one.

But it still failed to execute.
Any idea for this?

 

The Ubuntu rpm's contain binaries that have been optimized for core platforms (AVX2, etc.), so you should use the intel-openvx_yocto* rpm. 

Please let me know how it goes.

Ryan

0 Kudos
Reply