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

IPP 5.1 gets unloaded too early MSVS .net 2005

srodriguez
Beginner
238 Views
Hi All,
I have a problem where IPP 5.1 gets unloaded too early under MSVS .net 2005, thus when I call ippFree() I get an exception becasue the memory pool that was previously allocated with IPP 5.1 library is no longer present.

Background:
I have a library with a single global library object that keeps track of all memory buffers that have been allocated, then at the end of my application, the applicatin code (i.e. GUI code) deletes the object which holds all of the library objects (that's the way we decouple library stuff from GUI stuff); when the library objects (which are using IPP) finish to get deleted, my global Memory manager goes and tries to delete buffers that were not deleted, when trying to do this, I find out that the memory buffers are no longer valid; in other words, these memory blocks have been returned to the system, so we strongly suspect that the IPP DLL has been unloaded.

Question:
How do we control the unload time ?

Thank you.
God bless you,

Saul Rodriguez
Software Engineer
Moorpark, CA

0 Kudos
1 Reply
Vladimir_Dudnik
Employee
238 Views

Hi Saul,

if I understand the problem correctly it seems that you try to call ippFreetwice on the same address.This is not IPP issue. I recommend you to explicitelyzero pointer to deallocated memory, it helps to guard fromattempts to free memory block twice.

if(0 != pointer)
{
ippFree(pointer);
pointer = 0;
}

Regards,
Vladimir

0 Kudos
Reply