Intel® Integrated Performance Primitives for Small Matrix Operations

The third operational domain of Intel IPP is primitive functions for processing small matrices, that is two-dimensional data in the matrix format of several supported sizes. Often Intel IPP for small matrix operations are referred to as IPPM functions, by the prefix that the function name carries. 

Intel IPP for operations on small matrices provides solutions to a number of software development tasks, including developing various graphics, computer game applications, and CAD applications. For example, you can find Intel IPP solutions useful for applications that require transforming point coordinates from one coordinate system to another, computing dynamics for physical motion modeling, or solving systems of linear equations.

Although the functionality provided by Intel IPP functions for small matrix operations may seem similar, if not identical, to the functionality provided by Intel® Math Kernel Library (Intel® MKL), these two libraries differ in their respective fields of application. Whereas Intel MKL is designed to process large matrices in, for example, statistical applications that operate on large-size data, IPPM is tailored to processing matrices of significantly smaller sizes in, for example, graphics and CAD applications. IPPM is customized for fast performance on supported matrix sizes. 

Supported sizes in IPPM: 

  • 3x1, 4x1, 5x1, 6x1, and Nx1 are possible choices for the size of vectors

  • 3x3, 4x4, 5x5, 6x6, and NxM are possible choices for the size of matrices.