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

IPP on AMD64 processor

ptrifonov
Beginner
350 Views

Hello,

I am trying to use IPP to compute dot product of two 16-bit integer vectors. My CPU is Athlon 64. I discovered that IPP function ippsDotProd_16s64s does not use SSE[1,2,3] instructions if 64-bit version is used, while32-bit version does employ SSE3 ones.

ippGetCpuType() correctly detects that my processor type as ippCpuX8664. I have tried to explicitly enable SSE3 in IPP by calling ippStaticInitCpu(ippCpuSSE3), but this did notchange anything.

The following presents the normalized time required to compute the dot product explicitly in C, by using SSE2 intrinsics, and by using IPP, respectively.

32-bit: 1.68991e-009 5.26428e-010 5.79834e-010

64-bit: 1.9455e-009 6.2561e-010 1.89972e-009

IPP-based implementation is 3 times slower than hand-coded SSE2 one.

Does anybody know ifit ispossible to make IPP to work on AMD processors in 64-bit mode?

Many thanks in advance.

With best regards,

P. Trifonov

0 Kudos
1 Reply
Vladimir_Dudnik
Employee
350 Views

Hello,

what version of IPP do you use (I'm asking because there was some change in IPP dispatching on non-Intel systems from IPP 5.0)?

Regards,
Vladimir

0 Kudos
Reply