Intel® Integrated Performance Primitives
Community support and discussions relating to developing high-performance vision, signal, security, and storage applications.
Announcements
The Intel sign-in experience is changing in February to support enhanced security controls. If you sign in, click here for more information.

ippsPolyphaseResample performance

khoroshavinss
Beginner
139 Views

Not long ago I had to implement a resampler with rational resampling factor. Out of curiosity I've done it in two ways - using multirate FIR filters (ippsFIR) and using ippsPolyphaserResample* functions. The thing is that while measuring performance of these implementations I found out that using just multirate FIR filter usually gives much better performance. For example, resampling from 48000 Hz to 44100 Hz with roll-off coeficient 0.9 and alpha and filter taps lengths such that out of band suppression is 60 dB I've got roughly 55 clocks per sample using multirate filter and 210 clocks per sample using ippsPolyphaseResample. Why is it so "slow"?

Measurements were done on computer with P4-3.2HT. I'm using IPP 5.0 and all operations areperformed in Ipp32f format.

Message Edited by KhoroshavinSS on 03-31-200606:43 AM

0 Kudos
4 Replies
Intel_C_Intel
Employee
139 Views

The calculation flow is different in these functions. Multirate filter does upsampling, then filtering, then downsampling. Polyphase resample calculates filters for each phase and calculated each pixel with the proper filter. It has performance hint to do internal calculations in floats or doubles.

Could you please send your example? It's interesting for us, too.

Thanks,

Alexander

khoroshavinss
Beginner
139 Views
I see. I've used ippAlgHintFast flag in PolyphaseResampleInit function, so if my guess is right it means that calculations were done in floats.
Concerning the example - no problem, if you tell where exactly to send it.
Best regards,
Sergey
Vladimir_Dudnik
Employee
139 Views
Hello,
please note, you can attach zip archive to your post on this forum, so if you agree to place some example as an open source you can do it this way.
Regards,
Vladimir
Intel_C_Intel
Employee
139 Views

Hello,

You can send the example to alexander.kibkalo@intel.com

Thanks,

Alexander

Reply