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 has changed to support enhanced security controls. If you sign in, click here for more information.
6663 Discussions

ippiMorphOpenBorder_8u_C1R is slower than older IPP version

BaffledCoder
New Contributor I
653 Views

Recently I shifted from IPP 5.3 to IPP 2021.6.2.
While testing for performance, we found out that 
ippiMorphOpenBorder_8u_C1R is taking 30% more time than IPP 5.3.
Whereas other functions like ippiDCTFwd_32f_C1R and ippiFFTFwd_RToPack_32f_C1R are faster by 40%.Also, ippiMorphCloseBorder_8u_C1R is faster by 30%

Results for ippiMorphOpenBorder_8u_C1R

For IPP 5.3.3.082 time per 1000 calls is 4730.390188

For IPP 2021.6.2 time per 1000 calls is 6188.637276

 

What could be the reason for this?

Performance tests were done on the machine supporting AVX 2 instruction set.

 

0 Kudos
15 Replies
BaffledCoder
New Contributor I
645 Views

On AVX 512F, ippiMorphOpenBorder_8u_C1R has an optimization of 12%
Also, while testing for performance, we found that ippiMean_StdDev_8u_C1R is slower than IPP 5.3 by 30%. (AVX 2)
There could be more functions that I will share if found.

EDIT:
In AVX2, there is no optimization in ippiMorphOpenBorder_8u_C1R.
Previously, I was calling allocating work buffer before each call of ippiMorphOpenBorder_8u_C1R using ippsMorphAdvGetSize+ippdMalloc+ippiMorphAdvInit.
Now I am only allocating buffer once for the same ROI and MASK.
and calling ippiMorphOpenBorder_8u_C1R 
As a result, the MorphOpenBorder function takes the same time as the previous one. 
I am not sure what caused this to happen. 

I will be making a reproducer to share all the function which is taking more time in IPP 2021.6.2 compared to IPP 5.3

BaffledCoder
New Contributor I
600 Views

Update:
I have created the reproducer for ippiMean_StdDev_8u_C1R 

And think that could be caused due to smaller number of input values.
Please provide a medium if a reproducer is required.
Also, I haven't received any update regarding ippiMorphOpenBorder_8u_C1R.
Regards,
Shubham Sharma

NoorjahanSk_Intel
Moderator
576 Views

Hi,


Thanks for posting in Intel communities.


Could you please provide us with the reproducer codes using both ippiMean_StdDev_8u_C1R and ippiMorphOpenBorder_8u_C1R? So that we can try it from our end.

Also please let us know how you are measuring the performance along with OS details and Compiler version being used.



Thanks & Regards,

Noorjahan.


BaffledCoder
New Contributor I
567 Views

Hi @NoorjahanSk_Intel ,
Things to be noted:
I have only shared the reproducer for ippiMean_StdDev_8u_C1R
My machine supports AVX 2
OS: Windows 10 Pro version: 22H2

Processor: Intel(R) Core(TM) i7-4790 CPU @ 3.60GHz 3.60 GHz
RAM 32 GB 64bit


Here is the link to the reproducer.
I have shared the lib and header file for building IPP2021.6  and  PerformanceTest_IPP project.
If you also need IPP 5.3 project, please email me.
Regards,
Shubham Sharma

BaffledCoder
New Contributor I
530 Views

Hi @NoorjahanSk_Intel ,
Any update on the issue??

 

NoorjahanSk_Intel
Moderator
524 Views

Hi,

 

Thanks for providing the details.

 

We tried the sample code from our end with VS 2022 17.2.6 version and we are facing some issues.

Please refer to the below screenshot for more details.

NoorjahanSk_Intel_0-1671692849158.png

 

Could you please help us in resolving this issue by providing the detailed steps to build the code with VS 2022?

 

Thanks & Regards,

Noorjahan.

 

BaffledCoder
New Contributor I
508 Views

Hi @NoorjahanSk_Intel ,
I think you have added extra space.
Instead of "Visual Studio 17 2022" you have written "Visual Studio 17 2022[SPACE]".

Please check and share if the issue still occurs.

Steps for building
You only have to change the Visual Studio version in the build.py and run it.
Afterward, build the PerformanceTest_IPP project in the release mode.

Regards,
Shubham Sharma


BaffledCoder
New Contributor I
480 Views

Any Updates @NoorjahanSk_Intel ??

 

NoorjahanSk_Intel
Moderator
420 Views

Hi,

 

Thanks for providing the details.

 

We have tried it at our end with visual studio and able to build the program successfully(3 succeeded and 0 failed)  but facing some issues while running it

Please find the below screenshot for more details:

NoorjahanSk_Intel_0-1672210395701.png

 

Where as with Intel command prompt, we are able to get the results and observed that older IPP version is taking less time than latest Version.

Please find the below screenshot for more details:

NoorjahanSk_Intel_1-1672210411315.png

 

Could you please help us to resolve the error with visual studio?

 

Thanks & Regards,

Noorjahan.

 

BaffledCoder
New Contributor I
390 Views

Hi @NoorjahanSk_Intel 
I think you would need to set PerformanceTestIPPEXE as a source project.
At the moment, ALL_BUILD is set as source (Check ALL_BUILD in bold in Solution Explorer)
You will need to right-click on PerformanceTestIPPEXE in the solution explorer and then Set it as Source Project.
Regards,
Shubham Sharma

BaffledCoder
New Contributor I
330 Views

Any update, @NoorjahanSk_Intel?

Regards,

Shubham Sharma

NoorjahanSk_Intel
Moderator
330 Views

Hi,


Could you please try with the latest IPP version(2021.7) and let us know if you still observe similar behavior with a reproducer?


Thanks & Regards,

Noorjahan.


BaffledCoder
New Contributor I
314 Views

Hi @NoorjahanSk_Intel ,
The issue persists.

BaffledCoder_0-1672825366120.png

Here is the link to the reproducer.
Regards,
Shubham Sharma

BaffledCoder
New Contributor I
238 Views

Any @NoorjahanSk_Intel  Update??

NoorjahanSk_Intel
Moderator
207 Views

Hi,


We have reported this issue to the concerned development team. They are looking into your issue.


Thanks & Regards,

Noorjahan


Reply