General and Specific FunctionsInside three broad Intel® IPP domains there are further divisions into functional groups that include primitive functions designed to perform operations in a more specific area, for example, functions for speech recognition, audio and video coding, or matrix arithmetic. The degree of specificity of the secondtier domains varies considerably, making the Intel IPP software package a combination of general and specific functions at the same time. For example, Intel IPP functions for vector mathematics operations like Add, Subtract, Normalize, or Dot Product computations clearly fit for any computational problem and thus can be considered as general layer primitives. Other examples of general functions include primitives for generating various signals like sinusoidal signals and triangular signals that can be used for creating sound effects, or primitives that perform Discrete Cosine and Fast Fourier Transform operations for providing core capabilities to audio and video decoding. On the other hand, Intel IPP functions for speech recognition are suited for a more specific purpose, for example, low bitrate voice compression for handheld devices, and thus may be considered as specific layer primitives. Another example of a specific function group is the video decode functions used for low bitrate video decoding and transmission. The following graphic presents a possible classification of major Intel IPP functional groups from more general to more specific.
