Community
cancel
Showing results for 
Search instead for 
Did you mean: 
songzhe
Beginner
275 Views

ipp 7.0 crash on Intel(R) Core(TM) i3-2100 CPU

ipp version: 7.0.4

code:
#include
#include

int main()
{
IppCpuType cpuType = ippGetCpuType();
if(ippInitCpu(cpuType) != ippStsNoErr)
printf("ippInitCpu(%d) failed", cpuType);
else
printf("ippInitCpu(%d) successed", cpuType);

char buffer[1024];
ippsZero_8u(buffer, sizeof(buffer));
return 0;
}

os: CentOS release 5.5 (Final)
CPU type: Intel Core i3-2100 CPU @ 3.10GHz
compile command line: gcc -o t main.c -I$IPPROOT/include -L$IPPROOT/lib/intel64 -lipps_l -lippcore_l
gcc version: 4.1.2 20080704 (Red Hat 4.1.2-48)

run result: Illegal instruction (core dumped)

gdb where:

(gdb) where
#0 0x0000000000400d96 in e9_ownsZero_8u_E9 ()
#1 0x0000000000400627 in e9_ippsZero_8u ()
#2 0x00000000004005e8 in main ()

Does ipp 7.0.4 sitll has bug on this CPU(Intel Core i3-2100 CPU @ 3.10GHz)?

0 Kudos
5 Replies
songzhe
Beginner
275 Views

core dump occurs on both 7.0.3 and 7.0.4
songzhe
Beginner
275 Views

it's ok in dynamic link mode, but static link mode will core dump
Chao_Y_Intel
Employee
275 Views

Hi songzhe,

Thanks for your report. We are checking this problem now. Does it only happen with ippsZero_8u function, or you find the problem when you call other IPP function?

Thanks,
Chao

songzhe
Beginner
275 Views

Hi Chao:

I think it happans on all functions;My application crashed on this CPU in static link mode, so I just choose a simple funtion ( ippsZero_8u ) to ensure weather it's my bug.
Chao_Y_Intel
Employee
275 Views


Hi,

The AVX instruction needs explicit operating system support: http://en.wikipedia.org/wiki/Advanced_Vector_Extensions

Could you please check this version Linux distribution support the AVX instructions?
Also, Could you please remove the following code, this will force IPP run AVX instruction.


IppCpuType cpuType = ippGetCpuType();
if(ippInitCpu(cpuType) != ippStsNoErr)
printf("ippInitCpu(%d) failed", cpuType);
else
printf("ippInitCpu(%d) successed", cpuType);

Instead, you can use ippInit() function to let IPP select the dispatching code.

Thanks,
Chao