Intel IPP functions for arrays beyond 32-bit size limits?


April 2019


114 time


I’m evaluating Intel IPP to speed up certain parts of our code, e.g.,

among others. I note this page in the manual:

While the rest of Intel IPP functions support only signals or images of 32-bit integer size, Intel IPP platform-aware functions work with 64-bit object sizes if it is supported by the target platform. … You can distinguish Intel IPP platform-aware functions by the L suffix in the function name, for example, ippiAdd_8u_C1RSfs_L. With Intel IPP platform-aware functions you can overcome 32-bit size limitations.

Of the three I mentioned above, it appears only sorting has 64-bit-aware functionality.

So, questions: can this be right? Can IPP not accelerate addition/abs on arrays beyond 32-bit indexing? Is there a master list of functions that have “platform-aware” (64-bit) alternatives in IPP? Do people hand-roll workarounds to the 32-bit limit, like calling the add/abs functions in a loop over 2^30-sized chunks?

0 answers