Jump to content

Integrated Performance Primitives

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by Danielstp (talk | contribs) at 23:43, 7 June 2017 (added version 9.0.1). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Integrated Performance Primitives
Developer(s)Intel
Stable release
9.0 / August 25, 2015; 8 years ago (2015-08-25)
Written inC/C++
Operating systemLinux, macOS, Microsoft Windows, Android
TypeLibrary or framework
LicenseProprietary, freeware[1]
Websitesoftware.intel.com/en-us/intel-ipp

Intel Integrated Performance Primitives (Intel IPP) is a multi-threaded software library of functions for multimedia and data processing applications, produced by Intel.[2]

The library supports Intel and compatible processors and is available for Linux, macOS, Windows and Android operating systems. It is available separately or as a part of Intel Parallel Studio.[2]

Features

The library takes advantage of processor features including MMX, SSE, SSE2, SSE3, SSSE3, SSE4, AVX, AVX2, AVX-512, AES-NI and multi-core processors. [3] Intel IPP includes functions for:

Organization

Intel IPP is divided into four major processing groups: Signal (with linear array or vector data), Image (with 2D arrays for typical color spaces), Matrix (with nxm arrays for matrix operations), and Cryptography.[3]

Half the entry points are of the matrix type, a third are of the signal type and the remainder are of the image and cryptography types. Intel IPP functions are divided into 4 data types: Data types include 8u (8-bit unsigned), 8s (8-bit signed), 16s, 32f (32-bit floating-point), 64f, etc. Typically, an application developer works with only one dominant data type for most processing functions, converting between input to processing to output formats at the end points.[3]

History

  • Version 2.0 files are dated April 22, 2002.
  • Version 3.0
  • Version 4.0 files are dated November 11, 2003. 4.0 runtime fully supports applications coded for 3.0 and 2.0.
  • Version 5.1 files are dated March 9, 2006. 5.1 runtime does not support applications coded for 4.0 or before.
  • Version 5.2 files are dated April 11, 2007. 5.2 runtime does not support applications coded for 5.1 or before. Introduced June 5, 2007, adding code samples for data compression, new video codec support, support for 64-bit applications on Mac OS X, support for Windows Vista, and new functions for ray-tracing and rendering.
  • Version 6.1 was released with the Intel C++ Compiler on June 28, 2009. Update 1 for version 6.1 was released on July 28, 2009. Update 2 files are dated October 19, 2009.[4]
  • Version 7.1[5]
  • Version 8.0[6]
  • Version 8.1[7]
  • Version 8.2[8]
  • Version 9.0, August 25, 2015[9]
  • Version 9.0.1, December 1, 2015[10]

Counterparts

See also

References

  1. ^ "No Cost Options for Intel Parallel Studio XE, Support yourself, Royalty-Free".
  2. ^ a b "Intel Integrated Performance Primitives (Intel IPP) 6.1 FAQs" (PDF). Intel Website. 2009. Retrieved 2010-08-12.
  3. ^ a b c "Intel Integrated Performance Primitives (Intel IPP) Library".
  4. ^ "Intel Integrated Performance Primitives (Intel IPP) Library 6.1 Release Notes".
  5. ^ "Intel Integrated Performance Primitives (Intel IPP) Library 7.1 Release Notes".
  6. ^ "Intel Integrated Performance Primitives (Intel IPP) Library 8.0 Release Notes".
  7. ^ "Intel Integrated Performance Primitives (Intel IPP) Library 8.1 Release Notes".
  8. ^ "Intel Integrated Performance Primitives (Intel IPP) Library 8.2 Release Notes".
  9. ^ "Intel Integrated Performance Primitives (Intel IPP) Library 9.0 Release Notes".
  10. ^ "Intel Integrated Performance Primitives (Intel IPP) Library 9.0 Github".

External links