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

IPP 10.7 Filter Median 2D Performance on Sapphire Rapids

pragadeesh_raju
Beginner
1,116 Views

Hi,

 

I have a large application that uses ippiFilterMedianBorder_8u_C1R() - with a 7x7 filter running on a Sapphire Rapids machine

 

The application originally uses an older IPP version (9.0) running on a Broadwell machine. As a part of migrating to Sapphire Rapids, we upgraded the IPP libraries to 10.7 - all dynamically linked. I had expected a performance improvement, upgrading from an older CPU and a library, but saw a performance drop overall and traced it to the filter median call.

 

From some of the earlier posts in the forum, I understand that filter median might not have a specific optimized implementation for a 7x7 kernel size. But the expected performance of a generic implementation should have been similar between both versions, if not better on the newer CPU.

 

Separately to track the performance slowdown we had a small program run filter median in a loop and check the performance between both versions, we were surprised to an almost 3x improvement in performance

 

Could you help us address the performance issues here?

 

Thanks

0 Kudos
7 Replies
Gennady_F_Intel
Moderator
1,068 Views

Raju,  I am not sure understand  what exact version of IPP did you upgrade?  pls check ippversion.h and give us IPP_VERSION_MAJOR value. 

 

0 Kudos
pragadeesh_raju
Beginner
1,040 Views

Hey @Gennady_F_Intel ,

I had referred to the lib files / interface's extension numbers as the version numbers in the initial post.  Please find the IPP versions below.

 

The old IPP has a version string : 

IPP_VERSION_STR "2017.0.3"

 

The new IPP has a version string : 

IPP_VERSION_STR "2021.8"

 

Thanks

0 Kudos
ShanmukhS_Intel
Moderator
1,065 Views

Hi Pragadeesh,

 

Thanks for posting in Intel communities.

 

Could you please isolate your issue and share with us a sample reproducer so that we can try reproducing the issue at our end and help you accordingly? In addition, it helps us a lot if you share with us the IPP version and the performance-related details that you have observed.

 

Generally, performance varies based on the target architecture, depending on the specific CPU features of Saphire rapids.

 

Best Regards,

Shanmukh.SS

 

0 Kudos
pragadeesh_raju
Beginner
1,038 Views

Hey @ShanmukhS_Intel ,

We have been trying recreating a simple example with similar compilation environments - flags and all, to observe this slowdown, but have been unable to do so yet.

 

As mentioned in the initial post, with a small program with only the median filter in a loop, we observe a 3x improvement between the older 2017.0.3 IPP vs the newer 2021.8.0 IPP - as expected with a newer processor and a library.

 

For now the issue seems to be in application we have though.

 

Thanks

0 Kudos
ShanmukhS_Intel
Moderator
954 Views

Hi Raju,


Thanks for the information, Based on your reply we assume that the real issue comes from your application. We would like to request you to correct us if there is any difference in our understanding.


Best Regards,

Shanmukh.SS


0 Kudos
pragadeesh_raju
Beginner
939 Views

Hi Shanmukh,

 

Yes you are correct - we are observing this slowdown only in our application but not with the small program.

 

 

Thanks,

Pragadeesh

0 Kudos
ShanmukhS_Intel
Moderator
857 Views

Hi Pragadeesh,

 

As the real issue occurs within your application, and not with the program involving only IPP routines as mentioned by you, we are going ahead and closing the thread.

 

Thanks for posting on the community. Please raise a new thread in case you have any other queries and we would be glad to help you with that!

 

Best Regards,

Shanmukh.SS

 

0 Kudos
Reply