Intel® Integrated Performance Primitives
Deliberate problems developing high-performance vision, signal, security, and storage applications.
告知
FPGA community forums and blogs on community.intel.com are migrating to the new Altera Community and are read-only. For urgent support needs during this transition, please visit the FPGA Design Resources page or contact an Altera Authorized Distributor.

ippMalloc/ippsMalloc alignment size

thomtek
初心者
1,828件の閲覧回数

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

0 件の賞賛
4 返答(返信)
Bjoern_B_Intel
従業員
1,829件の閲覧回数

Hi Tom,

I will look into this.

Best,

Bjoern

thomtek
初心者
1,829件の閲覧回数

Hi,

Any answer to this question yet?

Tom

Bjoern_B_Intel
従業員
1,829件の閲覧回数

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

Bjoern_B_Intel
従業員
1,829件の閲覧回数

Remark: Article Intel® IPP Memory Function ippMalloc/Free FAQ got updated. This request will get closed.

Thanks,

Bjoern

返信