ipps malloc

ipps malloc

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!

publicaciones de 5 / 0 nuevos
Último envío
Para obtener más información sobre las optimizaciones del compilador, consulte el aviso sobre la optimización.

yes, the standard malloc /free is called by ipp?malloc/ipp?free
there are no ipp function that will pre-allocate aligned memory.

Thank you for the quick response Gennady!

>>...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.

>>...ippsmalloc is making a system call which causes a time consuming mode switch...

Could you provide more technical details? How did you detect it?

Deje un comentario

Por favor inicie sesión para agregar un comentario. ¿No es socio? Únase ya