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. 

AccessViolation exception in using ippiErodeBorder_8u_C1R and ippiDilateBorder_8u_C1R



I have started using ippiErodeBorder_8u_C1R and ippiDilateBorder_8u_C1R and I call these APIs in a loop ,however I get access violation exception during iteration.IPP2018 version is used here.Below is the code,can someone please point out the error?

The exception comes from ippiErodeBorder_8u_C1R




                int iSpecSize;

                int iBufferSize;

                imageSize = 416 x 416

                kernelSize = 3x3

ippiResize_8u_C1 interface is missing, which interface to replace

I have Ipp 32-bit lib。  Version is v5.0. Name i ippiw7.dll.

I have not corresponding 64-bit version。where can i get the 64 bit version v5.0。

I get Ipp_9_0 32-bit和64-bit lib.

ippiResize_8u_C1 interface is missing, which interface to replace。

Can you provide any manual information?


ippiResizeYUV420Super_8u_P2R crash


I am trying to use IPP functionality to resize/downsizeYuv image using ippiResizeYUV420Super_8u_P2R API.

I did use ippiResizeYUV420GetSize, allocated memory for pSpec and pBuffer as per output of this API using malloc,  called ippiResizeYUV420SuperInit followed by ippiResizeYUV420GetBufferSize.

Everything is fine so far and all of these APIs return status 0, but when I actually use ippiResizeYUV420Super_8u_P2R, my application crashes at I9_ownSS1_8u.

Bug in ippsMaxIndx_64f


Currently I am using IPP version (2017.0.3) and I found bug in ippsMaxIndx_64f.

Condition : (1.) Array value less then -DBL_MAX  (2.) Length of array greater than 32 and not multiple of 4.
Output: It returns index of max element as length of array.

Kindly confirm whether this bug is fixed or not.?
If yes, provide me with the IPP version in which this bug is fixed.




Intel® IPP vs AES-NI

I have been working with a program that makes use of the AES-NI instructions, specifically AESENC  and AESKEYGENASSIST, and runs on the Intel Xeon Phi x200. In an attempt to improve its performance, I have been looking into using the IIPP, but from everything I have read the IIPP uses the same AES-NI functions. I have the following questions:

1. Does it make sense to look at IIPP as an alternative to AES-NI for the purpose of improving performance?

2. If it does, then what would be comparable to AESENC and AESKEYGENASSIST ?

Thank you,




1. A requirement of ippiThreshold_LTValGTVal is that the value of thresholdLT must be less than or equal to thresholdGT. I will note that, if this requirement is dropped, thresholding can be done in a range, in this case from thresholdGT..thresholdLT, To make this work, the threshold value OR condition in the IPP code must be changed (in that case) to an AND condition with swapped thresholdGT and thresholdLT parameters.

How to create YCbCr data external to IPP that can be used in IPP


My application needs to create image buffers outside of IPP,  and use them within IPP.

I need to process YCbCr, YCbCrA, RGB and RGBA data with 8 and 16 bit sample sizes.

I've managed to get a basic blur filter working in my environment - I had to carefully avoid the edges of my image to make it work. Having complete control over how I define and build the images external to IPP, I'd love to understand how the memory is laid out inside of IPP so I can replicate it.

Подписаться на Intel® Integrated Performance Primitives