Community
cancel
Showing results for 
Search instead for 
Did you mean: 
Adam5
Beginner
192 Views

IPP functions and data alignment

Hi,

 

I have recently vectorized a mathematical algorithm by replacing all scalar math with calls to ipp functions. I have them read some about the importance of allocating aligned data and the mechanisms for letting the compiler know data is properly aligned as to generate optimal code. When I use precompiled libraries like IPP, the library cannot assume data it receives is properly aligned.

My questions is whether indeed the performance gain when using IPP functions is smaller than if I allowed my compiler to vectorize my loops on its own, and if so, how significant would this effect be.

Thank you,

Adam

 

  

0 Kudos
3 Replies
GouthamK_Intel
Moderator
159 Views

Hi,

Thanks for reaching out to us!

We are forwarding this thread to the concerned internal team.

Have a Good day!


Thanks & Regards

Goutham


Abhinav_S_Intel
Moderator
147 Views

Hi Adam,

Our general recommendation is to align the working inputs by using our memory allocators ipp[s,i]Malloc_*. You may try to vectorize the loops in your code by compiler and compare it with IPP's implementation. You may compare the system perf results from IPP and your own optimized code.

Please file a ticket at https://supporttickets.intel.com/ under IPP product.

Abhinav

Adam5
Beginner
128 Views

Thank you for this response. I have since discussed this issue with an Intel engineer and instead try to let the Intel compiler vectorize my code. I will try and test this alternative approach.