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


In Intel® IPP 9.0, we are 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.  

Intel 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 Status of previous samples status section below.

Overview of examples distributed with Intel® IPP 9.0:
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 ipp-examples.zip from the <installdir>/ipp/examples folder to somewhere writable
  2. Unzip the package
  3. Open a cmd shell/terminal
  4. Set environment variables with ippvars.sh
  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 build.sh --sample=ipp-examples --arch=intel64 --ws=make --ipp=static
OSX build.sh --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 previous samples:
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 intel_ipp@intel.com. 

  • 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)

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.

 

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