- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
According to the IPP user manual, ippMalloc() and ippsMalloc_xxx() provide buffers aligned to 64-byte boundaries. But an IPP web page says they align to 32-byte boundaries: https://software.intel.com/en-us/articles/performance-tools-for-software-developers-memory-function-faq
We are going to use _aligned_malloc() for large buffer memory allocation and want to set the alignment paramter to give the same alignment as IPP does. Should we use 32-byte or 64-byte alignment?
Tom
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Tom,
I will look into this.
Best,
Bjoern
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
Any answer to this question yet?
Tom
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Tom,
You are right, the documentation is inconsistent here. The article on the IPP web page is quite some years old while we changed the alignment to 64-byte. This is true for all kinds of ippMalloc functions as we also need to support AVX with 512-bit vectors which by nature has to be 64-byte aligned. We will change and update the ippMalloc article on the IPP web page accordingly.
So please use 64-byte alignment in your application to be aligned with the ippMalloc functions.
Thanks for reporting the issue so we can fixed the documentation.
Best,
Bjoern
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Remark: Article Intel® IPP Memory Function ippMalloc/Free FAQ got updated. This request will get closed.
Thanks,
Bjoern

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page