Intel® Integrated Performance Primitives (Intel® IPP) Developer Guide and Reference

ID 790148
Date 3/22/2024
Public
Document Table of Contents

Platform-Aware Functions for Image Processing

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.