IPP40 SSE3 Support

IPP40 SSE3 Support

Hello ,

The IPP 4.0 Libraries web page of puffery states the following.

"Intel Integrated Performance Primitives (Intel IPP) is optimized for SSE3 to deliver great performance on Pentium 4 processors supporting Hyper-Threading Technology. "

However the "Getting started With Intel IPP" states

Processor Codes
px - C-optimized for all IA-32 processors

a6 - Optimized for Pentium III processors

t7 - Optimized for Pentium 4 processors with Hyper-Threading Technology

w7 - Optimized for Pentium 4 processors

i7 - Optimized for Intel Itanium processor family

Question #1: Does the IPP4 libraries provide SSE3 Support? (Use the SSE 3 Instructions)

Question #2: If So, what is the processor code?

Question#3: If the code is W7, how can I differentiate between a P4 and a P4 (Prescott using SSE3). I need to create separate statically linked libraries, one for the P4, and another for the P4 (Prescott)

Question#3: If the code is T7, how can I differentiate between a P4 (Hyperthreading) and a P4 (Prescott using SSE3 and Hyperthreading)

Thank you

Collin

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

Hi Collin,

I understand your troubles, so many technologies, so many of them supported in IPP:)
And may be it not so clear stated in documentation

Answering your questions:
libraries with W7 code do support Intel Pentium 4 processor with SSE2 as well as hyperthreading if presented.
libraries with T7 code does support P4 processors with SSE3 and hyperthreading.
Note, hyperthreading support is included only in IPP DLL, it is not used in static libraries to allow more flexibility forusers. And of course, not every function does have hyperthreading support but only thosewhere it make sense.

Regards,
Vladimir

Iam not quite following you.Please explainhow exclusion of hyperthreading support from static libraries cangive me more flexibility if I am using static linking?

What I've meant,you can take HT advantagesin your application automatically when youuse IPP as DLLs. It is simple and fast solution. But, of course, you can take more benefits if you have full control on threading in your application. And it is possible if you use IPP as static libraries. In this case you should develop threading model in your application yourself. It can be not so easy, but you will have full control on it.

Regards,
Vladimir

Leave a Comment

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