28.03.2017 Views

Primitives

ippi_0

ippi_0

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Intel ® Integrated Performance <strong>Primitives</strong> Concepts 2<br />

execution is not aborted. The result of the operation is set to the maximum value that can be represented by<br />

the source data type, and the user is warned by the output status ippStsDivByZero. See appendix A<br />

Handling of Special Cases for more information.<br />

Platform-Aware Functions for Image Processing<br />

Intel ® Integrated Performance <strong>Primitives</strong> (Intel ® IPP) library provides so-called platform-aware functions.<br />

These functions use the special data type IppSizeL for object sizes. The IppSizeL data type represents<br />

memory-related quantities: it can be 32- or 64-bit wide depending on the target architecture.<br />

While the rest of Intel IPP functions support only objects of 32-bit integer size, platform-aware functions can<br />

work with 64-bit object sizes if it is supported by the platform. The API of platform-aware functions is similar<br />

to the API of other Intel IPP functions and has only slight differences. You can distinguish platform-aware<br />

functions by the L suffix in the function name, for example, ippiAdd_8u_C1RSfs_L.<br />

Currently, the following image processing functions have platform-aware APIs:<br />

Function Group Header Function Name<br />

Arithmetic Functions ippi.h/ippi_l.h Add<br />

AddC<br />

Sub<br />

SubC<br />

Mul<br />

MulC<br />

Div<br />

Linear Filters ippi.h/ippi_l.h FilterBilateralBorderGetBu<br />

fferSize<br />

FilterBilateralBorderInit<br />

FilterBilateralBorder<br />

Resize Transform Functions ippi.h/ippi_l.h ResizeGetSize<br />

ResizeGetBufferSize<br />

ResizeGetBorderSize<br />

Resize{Nearest|Linear|<br />

Cubic|Lanczos|Super}Init<br />

Resize{Nearest|Linear|<br />

Cubic|Lanczos|Super}<br />

ResizeAntialiasing{Nearest<br />

|Linear|Cubic|Lanczos|<br />

Super}Init<br />

ResizeAntialiasing{Nearest<br />

|Linear|Cubic|Lanczos|<br />

Super}<br />

Support Functions ippi.h/ippi_l.h Malloc<br />

Intel IPP platform-aware functions are documented as additional flavors to the existing functions declared in<br />

standard Intel IPP headers (without the l suffix). The ippi_l.h header is included into ippi.h.<br />

Threading Layer Functions<br />

Intel ® Integrated Performance <strong>Primitives</strong> (Intel ® IPP) library provides threading layer (TL) functions for image<br />

processing. It is a set of functions that are implemented as wrappers over Intel IPP platform-aware functions<br />

by using tiling and multithreading with OpenMP*. For implementation details, please see the corresponding<br />

source code files.<br />

The API of TL functions is similar to the API of other Intel IPP functions and has only slight differences. You<br />

can distinguish Intel IPP TL functions by the _LT suffix in the function name, for example,<br />

ippiAdd_8u_C1RSfs_LT.<br />

31

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!