Intel® Integrated Performance Primitives

Intel® IPP 2018 Update 2 is now available

Intel® IPP 2018 Update 2 is now available. Intel(R) IPP 2018 Update 2 release added the new APIs to computes the CRC24 and CRC16 checksum, introduced new APIs in the image processing domain for fixed point Resize functionality,  extended optimization for Intel® SSE4.2 and Intel®AVX2 instruction set for LZ4 data, and added  optimization for Intel®AVX2 and Intel® AVX-512 instruction set in some image and signal processing functions. 

Running Applicaiton with IPP in CygWin

I have my test application built and running in MSVS 2015 using IPP and MKL on Windows 7 64bit OS.

I want to build the application using GCC and Eclipse (Oxygen).   I have installed Cygwin (v2.8.91) on my Windows 7 64 bit os.

I am able to build my application (from Eclipse launched from Start Menu) using "Cygwin GNU" tool chain referencing the IPP and MKS libraries from the installation location:

Library path (-L):

"C:\Program Files (x86)\IntelSWTools\compilers_and_libraries_2017.4.210\windows\ipp\lib\intel64_win" 

Different Approaches in Intel(R) IPP Resize


Intel® Integrated Performance Primitive (Intel® IPP) library exists more than 20 years. Together with this long history Resize functionality also continuously changes from release to release: - API became more convenient, scaling approach was changes.

Difference between Resize APIs

Historically there were 3 base Resize API in Intel® IPP library: ippiResizeSqrPixel, ippiResize, ippiResizeLinear (and for other interpolation types similarly).

  • Professional
  • Intel® Integrated Performance Primitives
  • Development Tools
  • ippsEncodeHuffGetSize_BZ2_16u8u

    i have serval questions,hope someone who can help you.

    q1:In 'ippsEncodeHuffGetSize_BZ2_16u8u' , What does 'int wndSize' mean?
    q2:In 'ippsEncodeHuffInit_BZ2_16u8u', What does 'sizeDictionary' mean?
    q3:In 'ippsPackHuffContext_BZ2_16u8u',What does 'pCode' represent?
    q4:In 'ippsEncodeHuff_BZ2_16u8u',What's the difference between Ipp32u* pCode and Ipp16u** ppSrc?

    Thank & regards


    Assuming that the actual declarations of  the various ippiMorphologyBorderInit flavours are correct, there are the following errors in the comments for the parameters

        roiWidth                 there is no roiWidth parameter but instead an roiSize parameter

        anchor                   there is no anchor parameter

        pState                   there is no pState parameter


    Adriaan van Os


    ippiErode3x3 and ippiDilate3x3

    The comments in ippi.h for ippiErode3x3 and ippiDilate3x3 are as follows:

     Name:      ippiErode3x3_8u_C1R()    ippiDilate3x3_8u_C1R()

    //             ippiErode3x3_8u_C3R()    ippiDilate3x3_8u_C3R()

    //             ippiErode3x3_8u_AC4R()   ippiDilate3x3_8u_AC4R()

    //             ippiErode3x3_8u_C4R()    ippiDilate3x3_8u_C4R()


    //             ippiErode3x3_32f_C1R()   ippiDilate3x3_32f_C1R()

    //             ippiErode3x3_32f_C3R()   ippiDilate3x3_32f_C3R()

    //             ippiErode3x3_32f_AC4R()  ippiDilate3x3_32f_AC4R()


    For completeness, I suggest to add ippCmpNotEq to IppCmpOp.

    For example for ippiCompare "if the result of the compare is true, the corresponding output pixel is set to an IPP_MAX_8u value; otherwise, it is set to 0". Consequently, the logical negation of the comparison operator must be available, to control what pixels are set to IPP_MAX_8u and what to 0.


    Adriaan van Os

    Subscribe to Intel® Integrated Performance Primitives