Reputation: 86
Are there any requirements that are made by IPP on the data that it handles like alignment and so forth?
Upvotes: 4
Views: 1111
Reputation: 5037
On Windows, with x86 binaries (that's all I used so far), you don't need to align memory, but the userguide_win_ia32.pdf doc has a brief mention of alignment in Chapter 7 (from IPP v6.1):
Memory Alignment
The performance of Intel IPP functions can be significantly different
when operating on aligned or misaligned data. Access to memory is faster
if pointers to the data are aligned. Use the following Intel IPP
functions for pointer alignment, memory allocation and deallocation:
With some of the referenced functions: [see ippMalloc, ippAlignPtr, ippFree, etc...].
The bottom line is, alignment can help with performance, but you won't know to what extent until you profile with and without alignment.
Upvotes: 3