Intel® Integrated Performance Primitives

ippsFFTInit -- allocation and deallocation of the FFT specification structure

The first argument of ippsFFTInit is a double pointer to the FFT specification structure to be created.
Do I need to call ippsFree() on *ppFFTSpec when I am done using it?

IppStatus ippsFFTInit_C_64f(IppsFFTSpec_C_64f** ppFFTSpec, int order, int flag, IppHintAlgorithm hint, Ipp8u* pSpec, Ipp8u* pSpecBuffer);


ipp_get_cache_line_size already defined in ippicvmt.lib

Greetings, I'm currently trying to upgrade a Image Processing program from IPP7 to 9, OpenCV2.4 to 3.1 as well as converting it to static linking instead of dynamic. The progress was successful in dynamic linking, but a nightmare in static.

Long story short, 2 errors came out and I have no idea how to fix it due to it belongs to the IPP libraries:

ippiImageJaehne_32f bug?


i am using the function from the Topic with Ipp7.

int width = 101;int height = 1;

Ipp32f* m_pBuffer;

int m_iStepBytes;

m_pBuffer = ippiMalloc_32f(width,  height, &m_iStepBytes);

IppiSize roiSize = { width, height };

ippiImageJaehne_32f_C1R(m_pBuffer, m_iStepBytes, roiSize);

In Intel 7 i get the expected values in the range of 0 to 1 (not included). The function creates 0.499 and 0.99 and so on. Now i am using the Ipp9 test Version and i get values outside this range. I get 1.00 and 1.5 and 1.00 again.

reason for parallel studio xe 2017 with ipp download?

I have Parallel Studio XE 2017 installed, which I presume is what has put down the IPP files.

It has inserted itself into VS2015. I noticed this by the blue bar at the right edge of code windows, and hitting the Options... context menu that appears on clicking within the bar.

I have no Intel compilers installed. What is the purpose of PSXE17?

Did I select the wrong download?

Windows. I wanted IPP 2017, Community version (or as the free version may be called). Last I used IPP was mostly in the v3 and v4 days, for ARM.

Access Violation Issue in ippiCrossCorrValid_NormLevel_32f_C1R


We are using "ippiCrossCorrValid_NormLevel_32f_C1R" to find out cross correlation in our application running in Windows 7 64bit machine. The application is getting crashed after calling function "ippiCrossCorrValid_NormLevel_32f_C1R". We have did initial analysis of the crash dump and below are the details. The IPP version we are using is 6.1. We would need help to proceed further on narrowing down the issue. And we also want to know if it is a existing issue with IPPAPI?

About IPP Function "DemosaicAHD"


My current research work is focused in image processing and algorithms for CFA interpolation. I would like to perform some experiments with the algorithms for RGB image restoration from the grayscale CFA image, implemented in Intel IPP library -  CFAToRGB and DemosaicAHD.

I am new in using this library. I have troubles with understanding the meaning of parameter “pTmp” of function DemosaicAHD.


In the headers and documentation for ippiRGBToHLS (both for ipp v9 and v2017) the following pseudo-code is given

      if R = M2 then H = Cb - Cg

      if G = M2 then H = 2 + Cr - Cb

      if B = M2 then H = 4 + Cg - Cr


referring to 

      David F.Rogers

      Procedural Elements for Computer Graphics



However, in that book (2nd ed. 1998) on page 629 I read

      if R = M1 then H = Cb - Cg

      if G = M1 then H = 2 + Cr - Cb

      if B = M1 then H = 4 + Cg - Cr


Intel® IPP 2017 Bug Fixes

NOTE: Defects and feature requests described below represent specific issues with specific test cases. It is difficult to succinctly describe an issue and how it impacted the specific test case. Some of the issues listed may impact multiple architectures, operating systems, and/or languages. If you have any questions about the issues discussed in this report, please post on the user forums, or submit an issue to Intel® Premier Support,

Intel® IPP 2017  (6 Sep 2016)

  • Intel® Integrated Performance Primitives
  • The results of ippsCopyLE_1u and ippsCopyBE_1u are same

    As the doc says(,ippsCopyLE_1u and ippsCopyBE is diffierent.

    do a small test used IPP2017

    Ipp8u a = 1;//  00000001  high bit->low bit
     Ipp8u aBE = 0, aLE = 0;
     ippsCopyBE_1u(&a, 0, &aBE, 0, 8);
     ippsCopyLE_1u(&a, 0, &aLE, 0, 8);

    The result is aBE=1,aLE=1

    Should aLE be 128? // 10000000  high bit->low bit



    Subscribe to Intel® Integrated Performance Primitives