Code Samples for Intel® Integrated Performance Primitives (Intel® IPP) Library


Intel® IPP 8.0 represents a major product vision update.  We are now differentiating between "examples" and "samples".  In this context "examples" indicates simple code to illustrate how to get started with a feature of the IPP primitives or technology previews, as installed with those packages.  The term "samples" represents the much larger packages distributed for previous releases as a separate download.  

For this release and forward, IPP will only use examples as installed with the main product. The entire external samples package represents a previous era of IPP product development and is now legacy. 


For more information on the samples please check the previous sample status section below.


Overview of examples distributed with Intel® IPP:

These examples are only intended as simple starting points and are not optimized, tested, or supported at the same level as the primitives.

The list of examples is short, but expected to grow by the next major release.

Some setup is required to work with  the IPP samples package.
  1. Copy from the <installdir>/ipp/examples folder to somewhere writable
  2. Unzip the package
  3. Open a cmd shell/terminal
  4. Set environment variables with
  5. Generate the example solution/makefile
  6. Compile
OS Example build.cmd
Windows build.cmd --sample=ipp-examples --arch=intel64 --ws=vs2010 --ipp=static
Linux --sample=ipp-examples --arch=intel64 --ws=make --ipp=static
OSX --sample=ipp-examples --arch=intel64 --ws=make --ipp=static

For more information, please see documentation/ipp-examples.html in the ipp-examples bundle.


IPP Sample Description
ipp_fft Illustrates usage of FFT and DCT on images
ipp_resize_mt Shows how to use IPP resize functions with external threading.  Note: requires TBB to compile.
ipp_thread Image processing with external threading via native threads or TBB. Note: requires TBB to compile.



Status of samples previously released as a separate download:


Please note: Support for the contents of the legacy sample package is discontinued.  These previous samples are validated to build with the current IPP but no longer represent the direction of the product.  If you are using the old IPP release, these sample code can be downloaded from Intel Registration Center


Samples moved to legacy status in IPP 8.0:

There are no plans for further development of these samples.   Under limited circumstances issues may be filed against the primitives underneath but additional work on these samples will not be considered.

Your input is very welcome and necessary to help define the future of IPP (or possibly other products) in these areas.  Please send email with your feedback to 

  • Data compression (IPP optimized drop-in bzip, gzip, zlib, lzop replacements)
  • String processing (ippgrep)
  • Image codecs (IJG)
  • High-level language interface examples
  • Computer Vision
  • Image processing: image-tiling and ippidemo
  • Signal processing: ippsdemo
  • Deferred Mode Image Processing (DMIP)
Stay tuned -- new examples/documentation may be created for many of these topics, especially high level language interfaces and computer vision/image processing. These new developments will include IPP's new technology previews.


    Samples moved to legacy in IPP 7.1.1 and before:

    • OpenSSL patched with IPP cryptography functions. Fortran 90 language interface. OpenSSL (link) now includes significant optimizations for Intel processors, including AES-NI.
    • Intel Image Processing Library (IPL) and image processing templates.
    • 2D wavelet transform.
    • Ray Tracing/Realistic Rendering, 3D math.
    • Image and signal processing with MFC.

    For more complete information about compiler optimizations, see our Optimization Notice.


    Для получения подробной информации о возможностях оптимизации компилятора обратитесь к нашему Уведомлению об оптимизации.