Intel® Integrated Performance Primitives
Deliberate problems developing high-performance vision, signal, security, and storage applications.

ippsmalloc failing with NULL return

ipp_dev_bri
Beginner
384 Views

Hello,

 

We are trying to allocate memory using the ippsmalloc_32fc() method.  We have found one case where the allocation is failing and the return value is NULL.  It is failing with the following size:

 

ippsMalloc_32fc(1024 * 50176);

 

Can someone please tell me why the above call is failing?

 

Thanks for your help!

0 Kudos
1 Solution
Wobo
New Contributor I
238 Views

Hi,

in my understanding it is quite simple...most of such IPP functions are limited to 2GiB...with ippsMalloc_32fc(sizeof(Ipp32fc) * 1024 * 50176); you try to alloc 8 * 411041792 => 3.288.334.336 bytes...that is far beyond the 2GiB limit and cannot succeed.

 

Kind Regards

 

View solution in original post

4 Replies
Ruqiu_C_Intel
Moderator
355 Views

Just checked in my end(oneAPI 2025.0, Windows 10), looks everything is fine. 

Ruqiu_C_Intel_0-1733195521851.png

Please share us your IPP version, compiler, OS, CPU, etc.  

0 Kudos
ipp_dev_bri
Beginner
294 Views

Actually, the more accurate method call is as follows:

 

ippsMalloc_32fc(sizeof(Ipp32fc) * 1024 * 50176);

 

The IPP version being used is 2020.4.311.  The Windows OS version is Windows 10.  The compiler being used is Visual Studio 2017.  The build memory format is x64.  The CPU version is Intel I9-10980XE.

Ruqiu_C_Intel
Moderator
262 Views

Thank you for the information!

This function allocates memory block aligned to 64-byte boundary for elements of different data types in IPP document here:https://www.intel.com/content/www/us/en/docs/ipp/developer-guide-reference/2022-0/malloc-002.html

 

0 Kudos
Wobo
New Contributor I
239 Views

Hi,

in my understanding it is quite simple...most of such IPP functions are limited to 2GiB...with ippsMalloc_32fc(sizeof(Ipp32fc) * 1024 * 50176); you try to alloc 8 * 411041792 => 3.288.334.336 bytes...that is far beyond the 2GiB limit and cannot succeed.

 

Kind Regards

 

Reply