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.

Accuracy Checker - Illegal instruction (core dumped)

CD4
Beginner
956 Views

Hi!

I'm trying to check the mAP from my model with the accuracy_check.py tool. However, no matter what input parameters I insert, I always get the "Illegal instruction (core dumped)" message.

My input looks like this:

python3 accuracy_check.py
-C=/home/upsquared/Desktop/config.yml
-m=/home/upsquared/Downloads/openvino19-1
-s=/home/upsquared/Downloads/xmlval/JPEGImages
-a=/home/upsquared/Desktop/voc_detection
-tf dlsdk
-td MYRIAD

My config file looks like this:

models:
  - name: ssd_mobilenet
    launchers:
      - framework: dlsdk
        device: MYRIAD
        model: /home/upsquared/Downloads/openvino19-1/frozen_inference_graph.xml
        weights: /home/upsquared/Downloads/openvino19-1/frozen_inference_graph.bin
        adapter: ssd
    datasets:
      - name: voc
        annotation: /home/upsquared/Desktop/voc_detection/voc_detection.pickle
        data_source: /home/upsquared/Downloads/xmlval/JPEGImages
        preprocessing:
          - type: resize
            dst_width: 300
           dst_height: 300
        metrics:
          - type: map

My model input contains a converted model, my annotation input contains .pickle and .json file from the annotation converter.

Am I doing something wrong?

I really appreciate your help

CD

0 Kudos
8 Replies
Ekaterina_A_Intel1
955 Views

Hi,

Could you please share more detailed error log with me?

Do you try to run your model on myriad device using openvino samples? Possibly the root case of your problem is the fact that your model unsupported by myriad...

0 Kudos
CD4
Beginner
955 Views

Hi,

unfortunately, the "Illegal instruction (core dumped)"-Error is the only message that appears.

I already ran my model on the object_detection_demo_ssd_async as well as the object_detection_sample_ssd and it worked perfectly fine both times.

It doesn't matter, what input I give to the accuracy_check.py file, it always throws the same error.

CD

0 Kudos
Vladimir_Dudnik
Employee
955 Views

What version of OpenVINO do you use? The latest version is OpenVINO 2019 R2, could you please try that and tell us if it work for you?

0 Kudos
Ekaterina_A_Intel1
955 Views

My experience says that usually "Illegal instruction (core dumped)" happens when you try to use some libraries which were compiled with a set of processor instructions unsupported by your processor.  For example, I catch the same error when running Accuracy Checker on CPU with CPU extensions library for avx512 on a machine without avx512 instructions support.

Accuracy Checker is fully python tool, it does not require compilation, but I can not to say it about its dependecy (e.g. numpy, scipy). Besides that, Accuracy Checker uses OpenVINO python API, which delivered as shared library. I have a suspicion that your problem is associated with this particular library. Do you try to run any python demos from OpenVINO package?

0 Kudos
CD4
Beginner
955 Views

Hi,

thank you for your answers.

@Vladimir-dudnik: I'm using the latest version, openvino_2019.2.275.

@Aidova, Ekaterina: From the same folder, I already ran the annotation_converter.py successfully.

0 Kudos
Vladimir_Dudnik
Employee
955 Views

that still look strange for us. Could you please try to run accuracy check for one of open model zoo model? Under /opt/intel/openvino_2019.2.275/deployment_tools/open_model_zoo/tools/accuracy_checker should be subfolder configs, where you may find config files for several models from open model zoo (although they use WIDER and some other datasets). For example, face-detection-adas-0001 model pass accuracy check on our side.

It also might be helpful to know what operating system do you use and what CPU you are running on?

0 Kudos
CD4
Beginner
955 Views

Hi,

I kinda fixed it, by using a venv with Python3.7. Tried it with 3.5 and 3.6 before, but I honestly still don't know why it works now...

However, I'm facing the next issue, as the script won't accept my, or even the provided sample config files:

09:18:00 accuracy_checker WARNING: /opt/intel/openvino_2019.2.275/python/python3.6/openvino/tools/accuracy_checker/accuracy_checker/config/config_reader.py:398: UserWarning: Model "face-detection-adas-0001" has no launchers
  warnings.warn('Model "{}" has no launchers'.format(model['name']))

Do you have any suggestions for that?

 

To answer your latest question, I'm using an Upsquared AI EDGE on Ubuntu 18.04.3 with the following specs:

processor    : 0
vendor_id    : GenuineIntel
cpu family    : 6
model        : 92
model name    : Intel(R) Atom(TM) Processor E3950 @ 1.60GHz
stepping    : 9
microcode    : 0x38
cpu MHz        : 1985.438
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 ibrs ibpb stibp tpr_shadow vnmi flexpriority ept vpid ept_ad fsgsbase tsc_adjust smep erms mpx rdt_a rdseed smap clflushopt intel_pt sha_ni xsaveopt xsavec xgetbv1 xsaves dtherm ida arat pln pts md_clear arch_capabilities
bugs        : spectre_v1 spectre_v2
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    : 9
microcode    : 0x38
cpu MHz        : 1980.814
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 ibrs ibpb stibp tpr_shadow vnmi flexpriority ept vpid ept_ad fsgsbase tsc_adjust smep erms mpx rdt_a rdseed smap clflushopt intel_pt sha_ni xsaveopt xsavec xgetbv1 xsaves dtherm ida arat pln pts md_clear arch_capabilities
bugs        : spectre_v1 spectre_v2
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    : 9
microcode    : 0x38
cpu MHz        : 1969.499
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 ibrs ibpb stibp tpr_shadow vnmi flexpriority ept vpid ept_ad fsgsbase tsc_adjust smep erms mpx rdt_a rdseed smap clflushopt intel_pt sha_ni xsaveopt xsavec xgetbv1 xsaves dtherm ida arat pln pts md_clear arch_capabilities
bugs        : spectre_v1 spectre_v2
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    : 9
microcode    : 0x38
cpu MHz        : 1969.939
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 ibrs ibpb stibp tpr_shadow vnmi flexpriority ept vpid ept_ad fsgsbase tsc_adjust smep erms mpx rdt_a rdseed smap clflushopt intel_pt sha_ni xsaveopt xsavec xgetbv1 xsaves dtherm ida arat pln pts md_clear arch_capabilities
bugs        : spectre_v1 spectre_v2
bogomips    : 3187.20
clflush size    : 64
cache_alignment    : 64
address sizes    : 39 bits physical, 48 bits virtual
power management:

 

0 Kudos
Ekaterina_A_Intel1
955 Views

@CD, convert_annotation.py does not use openVINO python API at all, so the issue still can be connected with this lib usage (Possibly its build for python3.7 has some difference for other versions, which allows you to execute it). I speak about running another applications which also use it (e.g. One from <OPENVINO_ROOT>deployment_tools/inference_engine/samples/python_samples).

about a problem with UserWarning: Model "face-detection-adas-0001" has no launchers, please make sure that executed config contains specified by you in the command-line device. As I know, openvino_2019.2.275 configs contain only base configuration for CPU and GPU (because some users does not have specific devices, sorry about this inconvenience for you). You can replace device for FP16 model to MYRIAD to run it.

0 Kudos
Reply