Intel® Integrated Performance Primitives
Deliberate problems developing high-performance vision, signal, security, and storage applications.
Announcements
FPGA community forums and blogs on community.intel.com are migrating to the new Altera Community and are read-only. For urgent support needs during this transition, please visit the FPGA Design Resources page or contact an Altera Authorized Distributor.
6814 Discussions

show the ipp function list which is optimize by AVX or AVX2?

Fu__Yu
Beginner
1,224 Views

Currently I am doing some benchmark comparing the time usage between enable / disable the AVX / AVX2 / SSE. And I found there is no remarkable difference for some math function such as add & multiply. I switch the flag by manually change the cpu variable and call function: ippSetCpuFeatures. Is it reasonable or not?

 status = ippGetCpuFeatures(&mask, 0);
  // chage instruction flag
  //ippCPUID_MMX
  printf("\nBefore set ippCPUID_MMX:      %c\t%c\t", (mask & ippCPUID_MMX) ? 'Y' : 'N', (emask & ippCPUID_MMX) ? 'Y' : 'N');
  if (a = (mask & ippCPUID_MMX))
  {
   emask = (emask - ippCPUID_MMX);
  }
  printf("\nAfter set ippCPUID_MMX:     %c\t%c\t", (mask & ippCPUID_MMX) ? 'Y' : 'N', (emask & ippCPUID_MMX) ? 'Y' : 'N');
  ...
  IppSts = ippSetCpuFeatures(emask);
  if (IppSts == ippStsFeatureNotSupported || IppSts == ippStsUnknownFeature) //ippStsNoErr
  {
   wStatus = IppSts;
   goto EXIT;
  }

More detailed pls. refer to below.

 

Intel Xeon CPU E5-2650 V4 @ 2.2GHz

 

Image sz: 2048 * 2048

 

Unit of time: ms

 

Ipp version

Instruction & Compiler setting

Add

 

Multiply

 

SobelX&Y

     

Integer
 (unsigned char)

Float

Integer

Float

Integer

 

Ipp New (2018)

AVX2 off + AVX off + SSSE3 off

0.55

5.96

0.67

5.69

14.84

31

Ipp New (2018)

AVX2 off + AVX off + SSSE3 on

0.56

5.99

0.62

5.68

4.29

 

Ipp New (2018)

AVX2 off + AVX on

0.56

5.99

0.62

5.68

4.49

61439

Ipp New (2018)

AVX2 on

0.56

5.84

0.57

5.61

2.99

 

Ipp New (2018)

AVX2 on + VS AVX Compiler on

0.54

5.91

0.55

5.72

3.06

 

Ipp New (2018)

AVX2 on + VS AVX2 Compiler on

0.55

5.85

0.55

5.67

2.98

Thanks & regards,

FY

0 Kudos
2 Replies
Fu__Yu
Beginner
1,224 Views

Could you provide a table to show the ipp function list which is optimize by AVX or AVX2?

0 Kudos
Reply