Developer Reference for Intel® Integrated Performance Primitives
Intel® Integrated Performance Primitives (Intel® IPP) library provides so-called platform-aware functions. These functions use the special data type IppSizeL for object sizes. The IppSizeL data type represents memory-related quantities: it can be 32- or 64-bit wide depending on the target architecture.
While the rest of Intel IPP functions support only objects of 32-bit integer size, platform-aware functions can work with 64-bit object sizes if it is supported by the platform. The API of platform-aware functions is similar to the API of other Intel IPP functions and has only slight differences. You can distinguish platform-aware functions by the L suffix in the function name, for example, ippiAdd_8u_C1RSfs_L.
Currently, the following image processing functions have platform-aware APIs:
| Function Group | Header | Function Name |
|---|---|---|
| Arithmetic Functions | ippi.h/ippi_l.h | Add |
| AddC | ||
| Sub | ||
| SubC | ||
| Mul | ||
| MulC | ||
| Div | ||
| Linear Filters | ippi.h/ippi_l.h | FilterBilateralBorderGetBufferSize |
| FilterBilateralBorderInit | ||
| FilterBilateralBorder | ||
| Resize Transform Functions | ippi.h/ippi_l.h | ResizeGetSize |
| ResizeGetBufferSize | ||
| ResizeGetBorderSize | ||
| Resize{Nearest|Linear|Cubic|Lanczos|Super}Init | ||
| Resize{Nearest|Linear|Cubic|Lanczos|Super} | ||
| ResizeAntialiasing{Nearest|Linear|Cubic|Lanczos|Super}Init | ||
| ResizeAntialiasing{Nearest|Linear|Cubic|Lanczos|Super} | ||
| Support Functions | ippi.h/ippi_l.h | Malloc |
Intel IPP platform-aware functions are documented as additional flavors to the existing functions declared in standard Intel IPP headers (without the l suffix). The ippi_l.h header is included into ippi.h.