Intel® Integrated Performance Primitives
Community support and discussions relating to developing high-performance vision, signal, security, and storage applications.
Announcements
This community is designed for sharing of public information. Please do not share Intel or third-party confidential information here.

ipps malloc

Adlai_S_
Beginner
103 Views

I am working on a real-time system, and it appears that ippsmalloc is making a system call which causes a time consuming mode switch. Are the standard malloc/free called by ippsmalloc/ippsfree?

If so, is it ok to pre-allocate aligned memory (instead of dynamically allocating memory) and use the pre-allocated memory with ipp functions?

Is there an ipp function that will pre-allocate aligned memory?

Thanks!

0 Kudos
4 Replies
Gennady_F_Intel
Moderator
103 Views
yes, the standard malloc /free is called by ipp?malloc/ipp?free there are no ipp function that will pre-allocate aligned memory.
Adlai_S_
Beginner
103 Views
Thank you for the quick response Gennady!
SergeyKostrov
Valued Contributor II
103 Views
>>...ippsmalloc is making a system call which causes a time consuming mode switch... I would recommend to pre-allocate all needed memory before switching to a real-time processing ( if it's possible ). I've done some tests a couple of months ago and when large amounts of memory are allocated in the real-time on a Windows platform the performance of Virtual Memory manager goes down significantly. Regarding aligned memory: if you're using a Desktop Windows platform ( XP, Vista, 7, etc ) try to use 'aligned_malloc' and 'aligned_free' CRT-functions. However, they are Not supported on Windows CE and Mobile platforms.
SergeyKostrov
Valued Contributor II
103 Views
>>...ippsmalloc is making a system call which causes a time consuming mode switch... Could you provide more technical details? How did you detect it?
Reply