Software Archive
Read-only legacy content
17061 Discussions

Supplied binary does not match the Intel(R) Xeon Phi(TM) coprocessor that is installed.

Nicholas_S_3
Beginner
463 Views

I've been using an Intel Xeon Phi A3102 coprocessor with no issues for about 9 months now, but I recently started having issues running code natively on the device. When attempting to run a program via micnativeloadex I get the error message "Supplied binary does not match the Intel(R) Xeon Phi(TM) coprocessor that is installed", which I've never seen before. I updated the software on my (composer, etc) which does not seem to have solved the problem. For reference, I'm using RHEL 6.6. Some system information collected with micinfo:

Version
        Flash Version          : 2.1.02.0390
        SMC Firmware Version     : 1.16.5078
        SMC Boot Loader Version     : 1.8.4326
        uOS Version          : 2.6.38.8-g5f2543d

System Info
        HOST OS            : Linux
        OS Version        : 2.6.32-431.29.2.el6.x86_64
        Driver Version        : 6720-12
        MPSS Version        : 2.1.6720-12

The test program I've been using as a reference point is called matrix.c. I compiled it with the following command line prompt after running compilervars.sh and iccvars.sh:

icc -mkl -O3 -mmic -openmp -L  /opt/intel/lib/mic -Wno-unknown-pragmas -std=c99 matrix.c -o matrix.mic -liomp5

If there is other information that would help solve this issue let me know and I'll post it asap! I greatly appreciate any help offered.

0 Kudos
1 Reply
Frances_R_Intel
Employee
463 Views

I looked at the source code for micnativeloadex that comes with the MPSS and found that micnativeloadex prints that line when it gets a COI_BINARY_AND_HARDWARE_MISMATCH. What this means is that either the executable or one of the relocatable libraries is not compiled for the coprocessor. Given that you have been compiling with -mmic and not getting any errors at compile time, the question becomes - is anything different about the path variables such that micnativeloadex is picking up one or more different files at compile time than at run time? Or has a library of the wrong format somehow gotten installed on the coprocessor? 

(Your MPSS is a very old version. Is it possible to move to a newer version? That probably won't fix your problem but I don't know how much longer 2.1 will receive support.)

0 Kudos
Reply