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

ipp lead to decrease performance

mmmmm__hamed
Beginner
351 Views

hi

i have a system with 15 -750 cpu and windows 8.1 and I use IPP8.2 .

my program have a greate number Array Mul ,Div or sqrt.

i write a small code with ipp and use both ippm and ipps for mul array and compare that code performance with my simple array mul.

my code is this:

/-------------------------------------------------------------

    Ipp64f* src=new Ipp64f[200]();
    for(int i=0;i<200;i++)
    {
        src=i; // initialize source array with values
    }
    Ipp64f* res=new Ipp64f[200]();

    double t1=GetTickCount();
    for(int k=0;k<5000000;k++)
    {
        ippsMulC_64f(src,2,res,200);
    }
    double t2=GetTickCount();

    double Ipp_Mul_Time=t2-t1;

    for(int k=0;k<5000000;k++)
    {
        for(int i=0;i<200;i++)
        {
            res=src*2;
        }
    }
    double t3=GetTickCount();
  
    double MyMulTime=t3-t2;

//------------------------------------------------------------------------------------

i run this test program and in every test my simple Mul is faster than IPP Mul

i test this program for both small and big arrays and get same result.

i think that i can improve my progarm performance with intel ipp but it happend.

is exist a problem in my test code that lead to this abnormal behavor? or my test result is correct?

0 Kudos
3 Replies
mmmmm__hamed
Beginner
351 Views

my cpu is i5 -750.

0 Kudos
mmmmm__hamed
Beginner
351 Views

 hi

my problem is solved

i find that if i mul to floating point number instead 2 , Ipp is faster.

i think in above case ipp doing 64 bit floating point mul and standard mul use another(i dont unknow) simpler operation.

with same operation ipp is winner.

 

0 Kudos
Sergey_K_Intel
Employee
351 Views

Hi!

Please, be careful with measurements like these[:smile:])).

I have seen cases when optimizing compiler (like Intel C/C++) simply ignored some source code (even loops), if found that the results were not used later on.

0 Kudos
Reply