IPP core dump during execution

IPP core dump during execution

Hi

Could someone please help me out on this core dump issue.  I tried to run IPP on my PC and I am getting core dump during execution.  

 

Program terminated with signal 4, Illegal instruction.
#0  0x00007fc545139206 in e9_ownsZero_8u_E9 () from /opt/intel/ipp/lib/intel64/libippsce9.so.8.0
Missing separate debuginfos, use: debuginfo-install glibc-2.12-1.107.el6_4.4.x86_64 libgcc-4.4.7-4.el6.x86_64 libstdc++-4.4.7-4.el6.x86_64
(gdb) bt full
#0  0x00007fc545139206 in e9_ownsZero_8u_E9 () from /opt/intel/ipp/lib/intel64/libippsce9.so.8.0
No symbol table info available.
#1  0x00007fc545115259 in e9_ippsZero_16s () from /opt/intel/ipp/lib/intel64/libippsce9.so.8.0
No symbol table info available.
#2  0x00007fc54507d72d in e9_ippsPhaseDispersionInit_G729D_16s () from /opt/intel/ipp/lib/intel64/libippsce9.so.8.0
No symbol table info available.
#3  0x000000000042a94a in apiG729Decoder_Init (decoderObj=0x7fc513f0c010, codecType=G729A_CODEC) at decg729.cpp:124
        i = 4
        fltSize = 108
        abDec = {8192, 15836, -7667, 7699, -15398, 7699}
        oldMemBuff = 0x7fc513f16010 ""
#4  0x0000000000478d0c in RTP_UpdateCodec (usnWorkUnitID=<value optimized out>, usnIndex=0, ubCallerCodec=<value optimized out>, ubCallerPayload=<value optimized out>, 
    ubCalledCodec=<value optimized out>, ubCalledPayload=<value optimized out>) at rtp_work_unit.cpp:1117
        s_MemBank = {pMem = 0x7fc513f35938 "\024", nbytes = 2048, align = 0, memType = USC_OBJECT, memSpaceType = USC_NORMAL}
        __FUNCTION__ = "RTP_UpdateCodec"
        c_pPlayWU = 0x26d9540
        s_pLine = 0x7fc513ee4010
        s_options = {minframesize = 0, framesize = 0, maxframesize = 0, pcmType = {sample_frequency = 8000, bitPerSample = 20, nChannels = 0}, modes = {reserved1 = 0, 
            reserved2 = 0, reserved3 = 0, reserved4 = 0}}
#5  0x000000000041873a in Proc_UPDATE_CODEC_CMD (pData=0x12b3305 "hJ&\001") at ctrl_work_unit.cpp:1724
        ulong = <value optimized out>
        s_pUserData = 0x1264a68
        un32RID = 3
        __FUNCTION__ = "Proc_UPDATE_CODEC_CMD"
        sIP = "192.168.1.107", '\000' <repeats 26 times>
        pMSG = 0x12b3311 ""
        un64Dest = 0
        ubCallerCodec = 2 '\002'
        ubCallerPayload = 0 '\000'
        usnType = <value optimized out>
        un64Source = 1399188723
        sHeader = '\000' <repeats 127 times>
        p = <value optimized out>
        ubCalledCodec = 3 '\003'
        ubCalledPayload = 18 '\022'
        s_pLine = 0x7fc513ee4010
#6  0x000000000041dced in CTRL_ProcessMessage (pData=<value optimized out>) at ctrl_work_unit.cpp:1964
        __FUNCTION__ = "CTRL_ProcessMessage"
#7  0x000000000041df92 in __CTRL_Proc_Thread (lpParameter=<value optimized out>) at ctrl_work_unit.cpp:2002
        __FUNCTION__ = "__CTRL_Proc_Thread"
        pData = 0x12b3305 "hJ&\001"
        ubSleepFlag = 0 '\000'
        ScanRTPLineStatusTime = 1401165272
---Type <return> to continue, or q <return> to quit---
        Time = <value optimized out>
#8  0x0000003195207851 in start_thread () from /lib64/libpthread.so.0
No symbol table info available.
#9  0x0000003194ee894d in clone () from /lib64/libc.so.6
No symbol table info available.
(gdb) 

 

[root@baohq bin]# cat /proc/cpuinfo 
processor    : 0
vendor_id    : GenuineIntel
cpu family    : 6
model        : 23
model name    : Pentium(R) Dual-Core  CPU      E5300  @ 2.60GHz
stepping    : 10
cpu MHz        : 1203.000
cache size    : 2048 KB
physical id    : 0
siblings    : 2
core id        : 0
cpu cores    : 2
apicid        : 0
initial apicid    : 0
fpu        : yes
fpu_exception    : yes
cpuid level    : 13
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 lm constant_tsc arch_perfmon pebs bts rep_good aperfmperf pni dtes64 monitor ds_cpl est tm2 ssse3 cx16 xtpr pdcm xsave lahf_lm dts
bogomips    : 5230.55
clflush size    : 64
cache_alignment    : 64
address sizes    : 36 bits physical, 48 bits virtual
power management:

processor    : 1
vendor_id    : GenuineIntel
cpu family    : 6
model        : 23
model name    : Pentium(R) Dual-Core  CPU      E5300  @ 2.60GHz
stepping    : 10
cpu MHz        : 1203.000
cache size    : 2048 KB
physical id    : 0
siblings    : 2
core id        : 1
cpu cores    : 2
apicid        : 1
initial apicid    : 1
fpu        : yes
fpu_exception    : yes
cpuid level    : 13
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 lm constant_tsc arch_perfmon pebs bts rep_good aperfmperf pni dtes64 monitor ds_cpl est tm2 ssse3 cx16 xtpr pdcm xsave lahf_lm dts
bogomips    : 5230.55
clflush size    : 64
cache_alignment    : 64
address sizes    : 36 bits physical, 48 bits virtual
power management:

 

 

Linux baohq 2.6.32-358.el6.x86_64 #1 SMP Fri Feb 22 00:31:26 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux

4 posts / 0 new
Last post
For more complete information about compiler optimizations, see our Optimization Notice.

Hi Pete,

could you please compiler this small test and provide the output:

#include <stdio.h>
#include "ipp.h"

int main()
{
    const IppLibraryVersion* libver;       /* library info structure ptr */
	Ipp64u fm;

    ippInit();

    libver = ippsGetLibVersion();
    printf( " %s %s \n", libver->Name, libver->Version );

	//Get CPU features enabled with selected library level
	fm = ippGetEnabledCpuFeatures();
	printf("SSE    :%c\n", (fm >> 1) & 1 ? 'Y' : 'N');
	printf("SSE2   :%c\n", (fm >> 2) & 1 ? 'Y' : 'N');
	printf("SSE3   :%c\n", (fm >> 3) & 1 ? 'Y' : 'N');
	printf("SSSE3  :%c\n", (fm >> 4) & 1 ? 'Y' : 'N');
	printf("SSE41  :%c\n", (fm >> 6) & 1 ? 'Y' : 'N');
	printf("SSE42  :%c\n", (fm >> 7) & 1 ? 'Y' : 'N');
	printf("AVX    :%c\n", (fm >> 8) & 1 ? 'Y' : 'N');
	printf("AVX2   :%c\n", (fm >> 15) & 1 ? 'Y' : 'N');
	printf("----------\n");
	printf("OS Enabled AVX :%c\n", (fm >> 9) & 1 ? 'Y' : 'N');
	printf("AES            :%c\n", (fm >> 10) & 1 ? 'Y' : 'N');
	printf("CLMUL          :%c\n", (fm >> 11) & 1 ? 'Y' : 'N');
	printf("RDRAND         :%c\n", (fm >> 13) & 1 ? 'Y' : 'N');
	printf("F16C           :%c\n", (fm >> 14) & 1 ? 'Y' : 'N');

	return 0;
}

Pavel

Hi

Here is the compilation result:

 

# make
rm -rf *.o *.so *.a test
gcc test.c -I/opt/intel/composer_xe_2013_sp1.0.061/ipp/include/ -L/opt/intel/ipp/lib/intel64/ -lpthread -DP_64BIT -fPIC -DPIC -D_REENTRANT -lipps -o test
# ls
Makefile  test  test.c
# ./test
 ippSP SSSE3 (u8) 8.0.0 (r40040)
SSE    :Y
SSE2   :Y
SSE3   :Y
SSSE3  :Y
SSE41  :N
SSE42  :N
AVX    :N
AVX2   :N
----------
OS Enabled AVX :N
AES            :N
CLMUL          :N
RDRAND         :N
F16C           :N
#

Hi Pete,

That's strange. "e9" stands for AVX Intel64 (Sandy Bridge) library. Your computer is not AVX. You shouldn't fall into /opt/intel/ipp/lib/intel64/libippsce9.so library. How did you build the sample? With ordinary build script for USC samples?

Regards, Sergey

Leave a Comment

Please sign in to add a comment. Not a member? Join today