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

IPP 7.0 Beta : Does IPP 7.0 automatically use AVX?

Derek_Woodman
Beginner
705 Views
Hello,
I am testing out the IPP 7.0 Beta on the Sandy Bridge platform. Parts of my application have sped up in the move from 6.1 to 7.0, and on the other hand, parts have slowed down.
Is there a way to verify that the new AVX extensions are being used? Do you have to have a specific flag in the makefile or something? Or is AVX automatically used if the architecture supports it?
Thank you!
0 Kudos
6 Replies
Ying_S_Intel
Employee
705 Views

Hi Derek,

Thanks for your interest in testing Intel IPP 7.0 Beta on the Sandy Bridge platform. I'd recommend this article http://software.intel.com/en-us/articles/intel-ipp-functions-optimized-for-intel-avx-intel-advanced-vector-extensions/ which may addresse some of your questions.

Also, the current IPP 7.0 beta only manually supports theAVX code ( see this article) if the architecture supports it, however in upcoming IPP 7.0 beta release updates, the AVX code will be automaically used. So please check out our release updates periodcially. If you see any performance degradation in the latest 7.0, please provide us more details on the specific APIs or test case , we will look into it.

Thanks,
Ying

0 Kudos
Derek_Woodman
Beginner
705 Views
Hello Ying,
Thanks for your reply. Did you mean to reference another article? How would I manually make the application build with AVX? If it doesn't automatically do it in this beta of IPP. Sandy bridge supports AVX, and I would like to test the performance.
I assume the second article you mentioned will address how to use AVX, but there wasn't a link supplied.
Thank you!
Derek
0 Kudos
PaulF_IntelCorp
Employee
705 Views
Derek,

See this article.
http://software.intel.com/en-us/articles/ipp-dispatcher-control-functions-ippinit-functions/

The current beta requires that you still "force" the dispatcher to identify an AVX processor. In the final release of the product the dispatcher will automatically identify AVX hardware and this extra init step won't be required.

Paul
0 Kudos
Derek_Woodman
Beginner
705 Views
Paul,
Thank you for the link. That is an easy fix to add to my application right now.
I would also like to test some of the IPP samples over previous versions. Do the samples that are released with 7.0 beta include this call to the dispatcher?
Thank you,
Derek
0 Kudos
PaulF_IntelCorp
Employee
705 Views
Hello Derek,

I have not checked, but I doubt that the IPP samples include that extra init call to make AVX work, especially given that this is a temporary situation and very, very few people actually have access to AVX hardware (it is currently only available as an evaluation platform).

Paul
0 Kudos
Vladimir_Dudnik
Employee
705 Views
I would add that we enabled AVX dispatching in DMIP sample which will be part of IPP 7.0 beta 2 update (coming soon)

But in general, as Paul said, auto dispatching to AVX will be enabled in IPP 7.0 final release.

Regards,
Vladimir
0 Kudos
Reply