Intel® oneAPI Math Kernel Library
Ask questions and share information with other developers who use Intel® Math Kernel Library.
7222 Discussões

Illegal instruction Intel(R) Core(TM)2 Duo CPU E8400

ruebe
Principiante
5.447 Visualizações

Hi,

I have

#include
#include
#include "mkl_vml.h"
#include "mkl_service.h"

#define N 4

int main()
{
double a = {0.1, 0.2, 0.3, 0.4};
double b, y;
MKL_INT n = N, i;
MKLVersion ver;

MKLGetVersion(&ver);
printf("\\nMKL Version = %d.%d.%d\\n\\n", ver.MajorVersion, ver.MinorVersion, ver.UpdateVersion);

for (i = 0; i < n; i++) b = a - 0.05;

vdSub(n, a, b, y);

for (i = 0; i < n; i++)
printf("a[%d] - b[%d] = %f - %f = %f\\n", i, i, a, b, y);

return 0;
}

and

#include
#include
#include "mkl_vml.h"
#include "mkl_service.h"

int main()
{
double a[2] = {0.2, 0.3}, y[2];
MKL_INT n = 2, mod, accm, fpum, errm;
MKLVersion ver;

MKLGetVersion(&ver);
printf("\\nMKL Version = %d.%d.%d\\n", ver.MajorVersion, ver.MinorVersion, ver.UpdateVersion);

mod = vmlGetMode();
accm = vmlGetMode() & VML_ACCURACY_MASK;
fpum = vmlGetMode() & VML_FPUMODE_MASK;
errm = vmlGetMode() & VML_ERRMODE_MASK;

/*
printf("mod = %d\\n", mod);
printf("accm = %d\\n", accm);
printf("fpum = %d\\n", fpum);
printf("errm = %d\\n", errm);
*/

vdInv(n, a, y);


printf("Compute Power[{0.2, 0.3}, -1] using vdInv.\\n");
printf("answer = {%f, %f}\\n\\n", y[0], y[1]);

return 0;
}

with the following make file


# MKL static linking
MKLLIB = -Wl,--start-group $(MKLDIR)/libmkl_intel_lp64.a \\
$(MKLDIR)/libmkl_intel_thread.a $(MKLDIR)/libmkl_core.a -Wl,--end-group \\
-L$(MKLDIR) -liomp5 -lpthread

CC = gcc
CXX = g++
CFLAGS = -g -O0 -Wall -I$(MKLDIR)
LDFLAGS =-g -O0 $(MKLLIB) -lm

all : vdinv vdsub

vdinv : vdinv.o
$(CC) -o vdinv vdinv.o $(LDFLAGS)

vdinv.o : vdinv.c
$(CC) -c $(CFLAGS) vdinv.c

vdsub : vdsub.o
$(CC) -o vdsub vdsub.o $(LDFLAGS)

vdsub.o : vdsub.c
$(CC) -c $(CFLAGS) vdsub.c

clean :
rm -vf *.o

I compile

gcc -c -g -O0 -Wall -I/Components/MKL/10.2/Linux-x86-64/vendor vdinv.c
gcc -o vdinv vdinv.o -g -O0 -Wl,--start-group /Components/MKL/10.2/Linux-x86-64/vendor/libmkl_intel_lp64.a /Components/MKL/10.2/Linux-x86-64/vendor/libmkl_intel_thread.a /Components/MKL/10.2/Linux-x86-64/vendor/libmkl_core.a -Wl,--end-group -L/Components/MKL/10.2/Linux-x86-64/vendor -liomp5 -lpthread -lm
gcc -c -g -O0 -Wall -I/Components/MKL/10.2/Linux-x86-64/vendor vdsub.c
gcc -o vdsub vdsub.o -g -O0 -Wl,--start-group /Components/MKL/10.2/Linux-x86-64/vendor/libmkl_intel_lp64.a /Components/MKL/10.2/Linux-x86-64/vendor/libmkl_intel_thread.a /Components/MKL/10.2/Linux-x86-64/vendor/libmkl_core.a -Wl,--end-group -L/Components/MKL/10.2/Linux-x86-64/vendor -liomp5 -lpthread -lm

when I run these programs

I get Illegal instructions.

Program received signal SIGILL, Illegal instruction.
0x0000000000405406 in mkl_vml_core_e9_vml_dSub ()

bt:

#0 0x0000000000405406 in mkl_vml_core_e9_vml_dSub ()
#1 0x00000000004028e3 in vdSub ()
#2 0x00007fffffffde90 in ?? ()
#3 0x00007fffffffde90 in ?? ()
#4 0x00007fffffffded0 in ?? ()
#5 0x00007fffffffdfb0 in ?? ()
#6 0x0000000000000000 in ?? ()

My CPU is an Intel Core2 Duo CPU E8400

I use

gcc (SUSE Linux) 4.4.1 [gcc-4_4-branch revision 150839]

GNU C Library stable release version 2.10.1 (20090918), by Roland McGrath et al.

I tried to set

MKL_AVX_ENABLE to

but that did not help, I am not sure it should.

Anysuggestion, how I could fix it, or narrow it further down?

Thanks a lot

I think (because of the related CPU but i have not checked) there is a similar problem on a

Windows 7 (64 bit)
Intel Core2 Duo T9600 @ 2.80GHz

0 Kudos
17 Respostas
Gennady_F_Intel
Moderador
5.447 Visualizações

Oliver, thanks for the issue. this is an unknown problem for us and therefore we will try to check it on our side and will back asap.

Gennady

Gennady_F_Intel
Moderador
5.447 Visualizações

Oliver, can you get us thePackage ID you are using? You can find it into the \doc\mklsupport.txt file.

Andrey_G_Intel2
Funcionário
5.447 Visualizações

ruebe,

could you provide values of your environment variables (type set at command line) also?

Andrey

Vladimir_Lunev
Novo colaborador I
5.447 Visualizações

Hi ruebe,

Pleaseadd one more printf to your example

printf(" Processor optimization: %s\n",ver.Processor);

and provide the outputfor us.

Thanks,

-Vladimir

ruebe
Principiante
5.447 Visualizações
It's checked: Crashes on Windows 7 (64) with Intel Core2 Duo T9600 @ 2.80GHz
ruebe
Principiante
5.447 Visualizações

That would be

l_mkl_p_10.2.3.029

ruebe
Principiante
5.447 Visualizações

Why don't you tell me waht you want to know and I'll send that information.

ruebe
Principiante
5.447 Visualizações

That's

Processor optimization: Intel Core 2 Duo Processor

Andrey_G_Intel2
Funcionário
5.447 Visualizações

I have tried to reproduce your problem at E8400 and I have failed. But we have Windows 2003 server installed at this server.

Could you provide details - how are you building your tests at Windows?

Did you make any modifications to MKL libraries?

Andrey

ruebe
Principiante
5.447 Visualizações

Andrey,

no modifications to MKL, besides that we copy all the headers and libraries to a single directory.

The test on windows 7 is done (not by me) with the attached VS project files.

ruebe
Principiante
5.447 Visualizações

If I use the vdsub code with MKL 10.1 on the Linux setup, it works.

Any ideas?

kornic
Principiante
5.447 Visualizações

I experience a similar problem under vista 32 and core duo.

Funny enough a virus scan with DrWeb just popped up a possible infected element

C:\Program Files\Intel\Compiler\11.1\054\mkl\ia32\lib\mkl_core.lib

Doubt...

ruebe
Principiante
5.447 Visualizações

Andrey,

I am wondering if you consider this issue resolved, or if you are still investigating?

Thanks

Andrey_G_Intel2
Funcionário
5.447 Visualizações

Ruebe,

sorry for delay - I`m trying to find servers with similar to your configuration.

I have built your project and run it successfully at Core 2 duo E7200 andCore i7 extrime 975(both under Windows 7).

I have attached Release binaries to this post. Could you runthem at yourT9600 Windows7 system? (password for zip file is 12345).

Andrey

ruebe
Principiante
5.447 Visualizações

Andrey,

thanks, here are the results:

It opens up a window and prints out :
MKL Version = 10.2.3
and then crashes.

Here is the output from the crash window.

Problem signature:
Problem Event Name: APPCRASH
Application Name: vdsub-vc90.exe
Application Version: 0.0.0.0
Application Timestamp: 4b6f2cb1
Fault Module Name: vdsub-vc90.exe
Fault Module Version: 0.0.0.0
Fault Module Timestamp: 4b6f2cb1
Exception Code: c000001d
Exception Offset: 0000000000002c7e
OS Version: 6.1.7600.2.0.0.256.48
Locale ID: 1033
Additional Information 1: 4d92
Additional Information 2: 4d927d762d14971bbbd7864575416085
Additional Information 3: 07f5
Additional Information 4: 07f5ea87781fa57804bb957832da6b03

Gennady_F_Intel
Moderador
5.447 Visualizações

For those who are interested in the topic that was discussed here:The problem is already fixed and this fix will be available next update (MKL v.10.2 Update5).
We will announce of this release, when it will be available with the Intel Registration Center.

--Gennady
Gennady_F_Intel
Moderador
5.447 Visualizações
Hello everyone,

The problem you reported was fixed in the version 10.2 Update 5.

This version available for download from intel registration center: https://registrationcenter.intel.com/

--Gennady

Responder