Production-Ready Building Blocks for Cross-Platform Performance


Develop high-performance vision, signal, security, and storage applications with this multithreaded software library.

Overview

Intel® Integrated Performance Primitives (Intel® IPP) is an extensive library of ready-to-use, domain-specific functions that are highly optimized for diverse Intel® architectures. Its royalty-free APIs help developers:

  • Take advantage of Single Instruction Multiple Data (SIMD) instructions
  • Improve the performance of computation-intensive applications: signal processing, data compression, video processing, and cryptography
  • Reduce cost and time-to-market for software development and maintenance

Reasons to Use Intel IPP

Optimized for Performance

These software building blocks are highly optimized using Intel® Streaming SIMD Extensions 2, Intel® Advanced Vector Extensions 2 (Intel® AVX2), and Intel® Advanced Vector Extensions 512 (Intel® AVX-512) instruction sets.

Plug In and Go

With these ready-to-use, royalty-free functions, you will:

  • Gain more time to develop new application features
  • Reduce development, debug, and maintenance time
  • Ensure that the code you write today will run optimally on future generations of Intel® processors

A Comprehensive Set of Primitives

Access thousands of optimized functions covering frequently used fundamental algorithms, including those for creating:

  • Digital media
  • Enterprise data
  • Embedded communications
  • Scientific, technical, and security applications

The library includes more than 2,500 image processing, 1,300 signal processing, 500 computer vision, and 300 cryptography primitives.

Optimize for great CPU performance in current and for future Intel® platforms. With each instruction set upgrade, a new implementation layer is added. Previous implementations work as before, but functions that can benefit from new hardware capabilities are updated and validated before new architecture is released.

Unlock increased performance that's delivered with new hardware. Start using new CPU capabilities right away instead of interrupting development cycles for additional optimizations. In most cases, the performance boost is automatic. For other cases, all you have to do is recompile.

Domains and Workloads

Image Processing

Take visual information and convert it into usable data for further analysis and decision-making. As the volume of imaging information captured by vision systems rises, image processing converts image arrays into manageable units.

These image-processing applications use Intel IPP:

  • Healthcare (medical imaging)
  • Computer vision
  • Ecommerce (visual search)
  • Digital surveillance
  • Biometric identification
  • Factory machine vision
  • Advanced driver assistance systems (ADAS) for autonomous driving
  • Printing and printers
  • Image recognition and enhancement
  • Remote equipment operation
  • Gesture recognition
  • Recognize illegal images
  • Optical correction

Signal Processing

Enable information generation, transformation, and interpretation. Pull meaning from broad sources of data, helping modern communications that include:

  • Voice recognition
  • Biotechnology
  • Wearable technology
  • Hearing aids
  • Speech synthesis

For a wide variety of Intel architectures, optimize commonly used signal-processing functions that include:

  • Discrete Fourier transform (DFT)
  • Fast Fourier transforms (FFT)
  • Convolution
  • Filtering
  • Statistics

These signal-processing applications use Intel IPP:

  • Telecommunications
  • Energy
  • Ultrasound machines
  • Medical scanning
  • Record, enhance, and playback audio and non-audio signals
  • Echo cancellation: filter, equalize, and emphasis
  • Simulation of environment or acoustics
  • Games with sophisticated audio content or effect
  • Interfaces for voice-controlled personal assistants

Data Compression

This is the art of reducing the number of bits needed to store or transmit data. Intel IPP highly optimizes these common compression standards:

  • Lempel-Ziv-Storer-Szymanski (LZSS)
  • LZ77 (zlib)
  • Lempel-Ziv-Oberhumer (LZO)
  • Bzip2

With the plug-and-play nature of Intel IPP functions, you can achieve a significant performance gain on these applications:

  • Internet portal data center
  • Data storage centers
  • Databases
  • Enterprise data management

Cryptography

Cybersecurity plays a crucial role in autonomous, self-driving cars for protection against cyberattacks and intrusion. Intel IPP has many functions for:

  • Security analysis
  • Threat intelligence
  • Mobile security
  • Cloud security
  • IoT security
  • Data integrity and authentication hash (SHA, MD5, SM3)
  • Public key cryptography (RSA, ECC, HMAC, CMAC)
  • Secure data transfer, such as:
    • Symmetric algorithms
    • Advanced Encryption Standard (AES)
    • Triple DES (TDES)
    • SMS4
    • Steam ciphers

The cryptography library is available as an open source library.

GitHub*

These security applications use Intel IPP:

  • Telecommunications
  • Transaction security and cybersecurity
  • Smart card and wallet interfaces
  • ID verification
  • Copy protection
  • Electronic signature
  • Advanced driver-assistance systems (ADAS)

Documentation

For more details on the different domains and the functions in each domain, see the release notes.

Benchmarks

Performance numbers for the different domains are available.

More Information

Specifications at a Glance

Name Description
Processors Validated for use with multiple generations of Intel® and compatible processors that include Intel Atom®, Intel® Core™, and Intel® Xeon® processors
Operating Systems Same API for application development on multiple operating systems: Windows*, Linux*, Android*, and macOS*
Development Tools and Environments
  • Compatible with compilers from vendors that follow platform standards, such as Microsoft*, GNU Compiler Collection (GCC)*, and Intel
  • Can be integrated with Microsoft Visual Studio*
Languages Natively supports C and C++
License

End User License Agreement (EULA)

Note Your installed software development products may use a prior version of the EULA.

Note For more information, see Complete System Requirements.