Intel® Integrated Performance Primitives
Deliberate problems developing high-performance vision, signal, security, and storage applications.

IPP vs SPL low performance

shdow
Beginner
259 Views

Hi,I wrote a simple application which compares performance of SPL and IPP libraries.I'm using function which searches maximum value in vector.Here is the source:

DWORD time1,time2,SPL,IPP;float max;
int maxindex;

float signal[32768];
for (UINT i=0;i<32768;++i)
signal = i;
time1 = GetTickCount();
for (int i=0;i<1000;++i)
ippsMaxIndx_32f(signal,32768,&max,&maxindex); //it is IPP function
time2 = GetTickCount();

IPP = time2-time1;

time1 = GetTickCount();
for (int i=0;i<1000;++i)
max = nspsMaxExt(signal,32768,&maxindex); //it is SPL function
time2 = GetTickCount();

SPL = time2-time1;

printf("%s%d%s","SPL Performance:",SPL,"\n");
printf("%s%d%s","IPP Performance:",IPP,"\n");

the result was very strange:

SPL Performance:172
IPP Performance:203

It is impossible tha IPP could be slower than SPL.

0 Kudos
1 Reply
Vladimir_Dudnik
Employee
259 Views
That can be possible if you link with IPP static libraries and did not call ippStaticInit function which cause IPP static dispatcher switch to 'generic C' code instead of optimized branch.
Regards,
Vladimir

0 Kudos
Reply