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

Problems for ImageDataOrder function in IPP6.1

fanguts
Beginner
575 Views
logfile.rtf
Hi, I got some problems in ImageDataOrder's function.
In my program, I have:

ImageDataOrder dataOrder;
dataOrder.SetDataType(T8u);
dataOrder.ReAlloc(Interleaved, nOfComponents);//nOfComponents = 3

the program got error msgbelow;
This may be due to a corruption of the heap, and indicates a bug in myProg.exe or any of the DLLs it has loaded

Ibelieve this error is caused by dataOrder.Alloc(). so the program can not continue. Please give me helps for that.
thank you

below is from output window:
AlgorithmLab.exe': Loaded 'C:\AlgLabUIC\Debug\AlgorithmLab.exe', Symbols loaded.
'AlgorithmLab.exe': Loaded 'C:\WINDOWS\system32\ntdll.dll'
'AlgorithmLab.exe': Loaded 'C:\WINDOWS\system32\kernel32.dll'
'AlgorithmLab.exe': Loaded 'C:\WINDOWS\system32\user32.dll'
'AlgorithmLab.exe': Loaded 'C:\WINDOWS\system32\gdi32.dll'
'AlgorithmLab.exe': Loaded 'C:\WINDOWS\system32\comdlg32.dll'
'AlgorithmLab.exe': Loaded 'C:\WINDOWS\system32\shlwapi.dll'
'AlgorithmLab.exe': Loaded 'C:\WINDOWS\system32\advapi32.dll'
'AlgorithmLab.exe': Loaded 'C:\WINDOWS\system32\rpcrt4.dll'
'AlgorithmLab.exe': Loaded 'C:\WINDOWS\system32\msvcrt.dll'
'AlgorithmLab.exe': Loaded 'C:\WINDOWS\system32\comctl32.dll'
'AlgorithmLab.exe': Loaded 'C:\WINDOWS\system32\shell32.dll'
'AlgorithmLab.exe': Loaded 'C:\WINDOWS\system32\winspool.drv'
'AlgorithmLab.exe': Loaded 'C:\WINDOWS\system32\oledlg.dll'
'AlgorithmLab.exe': Loaded 'C:\WINDOWS\system32\ole32.dll'
'AlgorithmLab.exe': Loaded 'C:\WINDOWS\system32\oleaut32.dll'
'AlgorithmLab.exe': Loaded 'C:\AlgLabUIC\uic_core-1.0.dll', Binary was not built with debug information.
'AlgorithmLab.exe': Loaded 'C:\WINDOWS\WinSxS\x86_Microsoft.VC80.CRT_1fc8b3b9a1e18e3b_8.0.50727.3053_x-ww_b80fa8ca\msvcr80.dll'
'AlgorithmLab.exe': Loaded 'C:\AlgLabUIC\uic_io-1.0.dll', Binary was not built with debug information.
'AlgorithmLab.exe': Loaded 'C:\AlgLabUIC\uic_jpeg-1.0.dll', Binary was not built with debug information.
'AlgorithmLab.exe': Loaded 'C:\Program Files\Intel\IPP\6.1.0.032\ia32\bin\libiomp5md.dll', Binary was not built with debug information.
'AlgorithmLab.exe': Loaded 'C:\Program Files\Intel\IPP\6.1.0.032\ia32\bin\ippcore-6.1.dll', Binary was not built with debug information.
'AlgorithmLab.exe': Loaded 'C:\Program Files\Intel\IPP\6.1.0.032\ia32\bin\ippi-6.1.dll', Binary was not built with debug information.
'AlgorithmLab.exe': Loaded 'C:\Program Files\Intel\IPP\6.1.0.032\ia32\bin\ipps-6.1.dll', Binary was not built with debug information.
'AlgorithmLab.exe': Loaded 'C:\WINDOWS\system32\imm32.dll'
'AlgorithmLab.exe': Loaded 'C:\WINDOWS\WinSxS\x86_Microsoft.Windows.Common-Controls_6595b64144ccf1df_6.0.2600.2982_x-ww_ac3f9c03\comctl32.dll'
'AlgorithmLab.exe': Loaded 'C:\Program Files\Intel\IPP\6.1.0.032\ia32\bin\1033\ippmsg.dll', Binary was not built with debug information.
'AlgorithmLab.exe': Unloaded 'C:\Program Files\Intel\IPP\6.1.0.032\ia32\bin\1033\ippmsg.dll'
'AlgorithmLab.exe': Loaded 'C:\Program Files\Intel\IPP\6.1.0.032\ia32\bin\ippit7-6.1.dll', Binary was not built with debug information.
'AlgorithmLab.exe': Loaded 'C:\Program Files\Intel\IPP\6.1.0.032\ia32\bin\1033\ippmsg.dll', Binary was not built with debug information.
'AlgorithmLab.exe': Unloaded 'C:\Program Files\Intel\IPP\6.1.0.032\ia32\bin\1033\ippmsg.dll'
'AlgorithmLab.exe': Loaded 'C:\Program Files\Intel\IPP\6.1.0.032\ia32\bin\ippst7-6.1.dll', Binary was not built with debug information.
'AlgorithmLab.exe': Loaded 'C:\WINDOWS\system32\uxtheme.dll'
'AlgorithmLab.exe': Loaded 'C:\WINDOWS\system32\msctf.dll'
'AlgorithmLab.exe': Loaded 'C:\WINDOWS\system32\version.dll'
'AlgorithmLab.exe': Unloaded 'C:\WINDOWS\system32\version.dll'
'AlgorithmLab.exe': Loaded 'C:\WINDOWS\system32\MSCTFIME.IME'
'AlgorithmLab.exe': Loaded 'C:\WINDOWS\system32\mslbui.dll'
'AlgorithmLab.exe': Loaded 'C:\WINDOWS\system32\apphelp.dll'
'AlgorithmLab.exe': Loaded 'C:\WINDOWS\system32\clbcatq.dll'
'AlgorithmLab.exe': Loaded 'C:\WINDOWS\system32\comres.dll'
'AlgorithmLab.exe': Loaded 'C:\WINDOWS\system32\version.dll'
'AlgorithmLab.exe': Loaded 'C:\WINDOWS\system32\cscui.dll'
'AlgorithmLab.exe': Loaded 'C:\WINDOWS\system32\cscdll.dll'
'AlgorithmLab.exe': Loaded 'C:\WINDOWS\system32\browseui.dll'
'AlgorithmLab.exe': Loaded 'C:\WINDOWS\system32\setupapi.dll'
'AlgorithmLab.exe': Loaded 'C:\WINDOWS\system32\ntshrui.dll'
'AlgorithmLab.exe': Loaded 'C:\WINDOWS\system32\atl.dll'
'AlgorithmLab.exe': Loaded 'C:\WINDOWS\system32\netapi32.dll'
'AlgorithmLab.exe': Loaded 'C:\WINDOWS\system32\userenv.dll'
'AlgorithmLab.exe': Loaded 'C:\WINDOWS\system32\shdocvw.dll'
'AlgorithmLab.exe': Loaded 'C:\WINDOWS\system32\crypt32.dll'
'AlgorithmLab.exe': Loaded 'C:\WINDOWS\system32\msasn1.dll'
'AlgorithmLab.exe': Loaded 'C:\WINDOWS\system32\cryptui.dll'
'AlgorithmLab.exe': Loaded 'C:\WINDOWS\system32\wintrust.dll'
'AlgorithmLab.exe': Loaded 'C:\WINDOWS\system32\imagehlp.dll'
'AlgorithmLab.exe': Loaded 'C:\WINDOWS\system32\wininet.dll'
'AlgorithmLab.exe': Loaded 'C:\WINDOWS\system32\normaliz.dll'
'AlgorithmLab.exe': Loaded 'C:\WINDOWS\system32\iertutil.dll'
'AlgorithmLab.exe': Loaded 'C:\WINDOWS\system32\wldap32.dll'
'AlgorithmLab.exe': Loaded 'C:\WINDOWS\system32\riched20.dll'
'AlgorithmLab.exe': Unloaded 'C:\WINDOWS\system32\riched20.dll'
'AlgorithmLab.exe': Unloaded 'C:\WINDOWS\system32\browseui.dll'
'AlgorithmLab.exe': Unloaded 'C:\WINDOWS\system32\shdocvw.dll'
'AlgorithmLab.exe': Unloaded 'C:\WINDOWS\system32\cryptui.dll'
'AlgorithmLab.exe': Unloaded 'C:\WINDOWS\system32\wldap32.dll'
'AlgorithmLab.exe': Unloaded 'C:\WINDOWS\system32\wininet.dll'
'AlgorithmLab.exe': Unloaded 'C:\WINDOWS\system32\iertutil.dll'
'AlgorithmLab.exe': Unloaded 'C:\WINDOWS\system32\normaliz.dll'
'AlgorithmLab.exe': Unloaded 'C:\WINDOWS\system32\wintrust.dll'
'AlgorithmLab.exe': Unloaded 'C:\WINDOWS\system32\imagehlp.dll'
'AlgorithmLab.exe': Unloaded 'C:\WINDOWS\system32\crypt32.dll'
'AlgorithmLab.exe': Unloaded 'C:\WINDOWS\system32\msasn1.dll'
The thread 'Win32 Thread' (0x9bc) has exited with code 0 (0x0).
HEAP[AlgorithmLab.exe]: Invalid Address specified to RtlFreeHeap( 01210000, 024E9A48 )
Windows has triggered a breakpoint in AlgorithmLab.exe.
0 Kudos
9 Replies
PaulF_IntelCorp
Employee
575 Views
Hello "fanguts,"

Here's another recent thread regarding what appears to be the same issue you are experiencing:
http://software.intel.com/en-us/forums/showthread.php?t=63658

I don't see a resolution regarding the issue on this thread. I'll put in an inquiry to find out if the problem was ever successfully reproduced and solved.

If you can provide us with a simple example that causes the problem, that would be very helpful.

Regards,

Paul
0 Kudos
PaulF_IntelCorp
Employee
575 Views
Hello "fanguts,"

I found some additional information which may relate to your problem. The DLL files distributed with the UIC sample code are built in release mode. There appears to be a problem when you mix these release mode DLLs with debug modecode.

You can try to:

1) rebuild the UIC DLL files in debug mode before using them with your debug mode application

or

2) build your application in release mode and use the release mode UIC DLL files distributed with the sample code

Regards,

Paul

The DLLs released with the sample were build in release mode, it only can work with application build in release configuration. For debug version of UIC DLLs, please build them by the source code provided by sample.

...the bug could be caused by the fact that using C++ DLLs built in release mode with application built with debug mode is not supported because of different run-time (should be the same for proper global object initialization).

0 Kudos
fanguts
Beginner
575 Views
Quoting - Paul F (Intel)
Hello "fanguts,"

I found some additional information which may relate to your problem. The DLL files distributed with the UIC sample code are built in release mode. There appears to be a problem when you mix these release mode DLLs with debug modecode.

You can try to:

1) rebuild the UIC DLL files in debug mode before using them with your debug mode application

or

2) build your application in release mode and use the release mode UIC DLL files distributed with the sample code

Regards,

Paul

The DLLs released with the sample were build in release mode, it only can work with application build in release configuration. For debug version of UIC DLLs, please build them by the source code provided by sample.

...the bug could be caused by the fact that using C++ DLLs built in release mode with application built with debug mode is not supported because of different run-time (should be the same for proper global object initialization).


Hello Paul; Thank you very muchfor your info. I have almost exactly same problem. however, that happened on my program in release mode of 64 bits application. Could you check UIC dll for 64 bits in release mode? If possible, I will send you my solution/project files. Thank you.
BTW, I am using IPP 6.1XXX and visual C++ 2005
Also can you attach your UIC Dlls for me (both debug modesand release modes) ?
0 Kudos
fanguts
Beginner
575 Views
Quoting - Paul F (Intel)
Hello "fanguts,"

I found some additional information which may relate to your problem. The DLL files distributed with the UIC sample code are built in release mode. There appears to be a problem when you mix these release mode DLLs with debug modecode.

You can try to:

1) rebuild the UIC DLL files in debug mode before using them with your debug mode application

or

2) build your application in release mode and use the release mode UIC DLL files distributed with the sample code

Regards,

Paul

The DLLs released with the sample were build in release mode, it only can work with application build in release configuration. For debug version of UIC DLLs, please build them by the source code provided by sample.

...the bug could be caused by the fact that using C++ DLLs built in release mode with application built with debug mode is not supported because of different run-time (should be the same for proper global object initialization).

Hi Paul: I attached my program (solution/project files, exe file and relatedLibs files)now. Once unziped it, you will find 2 sub-folders. One is for release mode and another for debug mode. BOTH are 64-bits application. I am using VS 2005 and IPP 6.1.1XXX. My system: Intel Pentium Dual processor

Inmy ziped program, I also included 2 test jpeg files(test1.jpg, test2.jpg).After youstart my program, click the load button to loadtest1.jpg or test2.jpg, then right clickone of theminthe list view of my program. In debug mode, test image is display. But in release mode, got error Heap corruption ...after dataOrder.ReAlloc(Interleaved, 3).
thank you for the helps
fanguts


0 Kudos
PaulF_IntelCorp
Employee
575 Views
Hello Fanguts,

I was able to successfully download your attachments and will give them a try on a 64-bit Windows machine as soon as I can get access to one! My primary machine is a 32-bit Windows machine. Give me a few days to get this rolling.

In the mean-time, what happens if you compile and target a 32-bit machine? I'm assuming, of course, that your application can run on a 32-bit system. Of course, if that's not possible you won't be able to check it out there.

Paul
0 Kudos
fanguts
Beginner
575 Views
Quoting - Paul F (Intel)
Hello Fanguts,

I was able to successfully download your attachments and will give them a try on a 64-bit Windows machine as soon as I can get access to one! My primary machine is a 32-bit Windows machine. Give me a few days to get this rolling.

In the mean-time, what happens if you compile and target a 32-bit machine? I'm assuming, of course, that your application can run on a 32-bit system. Of course, if that's not possible you won't be able to check it out there.

Paul

Hello Paul, thank you for helps.
yes, for 32-bit system, Programis okin both debug and release mode.
for 64-bit system, program got error in release mode and is ok in debug mode.
0 Kudos
PaulF_IntelCorp
Employee
575 Views
Hello Fanguts,

I think the problem may be happening somewhere before UIC even gets called...

Interesting results: I copied your test applications over to a clean Win64 system that does not yet have Visual Studio installed and did not have IPP or UIC installed. I installed the IPP library, but have not installed VS, so my debugging resources are limited.

Important point for the following scenarious: I forgot to install the UIC code onto the machine!

Here are your instructions, for reference:

...After you start my program, click the load button to load test1.jpg or test2.jpg, then right click one of them in the list view of my program. In debug mode, test image is display. But in release mode, got error Heap corruption...

-- Debug Mode: I immediately get a "uic_core-1.0.dll was not found" error when starting the application, which is correct, because the UIC code was not installed on the machine.

-- Release Mode: I am able to start the application, load the sample JPG files, and then right-click, at which point the application crashes. Again, the UIC code is not installed, but the behavior appears to match what you are seeing.

Please try this yourself (remove the UIC library from your path so it can't be located), it might shed some light on a different part of your application that could be the root source of the problem.

Paul
0 Kudos
fanguts
Beginner
575 Views
Quoting - Paul F (Intel)
Hello Fanguts,

I think the problem may be happening somewhere before UIC even gets called...

Interesting results: I copied your test applications over to a clean Win64 system that does not yet have Visual Studio installed and did not have IPP or UIC installed. I installed the IPP library, but have not installed VS, so my debugging resources are limited.

Important point for the following scenarious: I forgot to install the UIC code onto the machine!

Here are your instructions, for reference:

...After you start my program, click the load button to load test1.jpg or test2.jpg, then right click one of them in the list view of my program. In debug mode, test image is display. But in release mode, got error Heap corruption...

-- Debug Mode: I immediately get a "uic_core-1.0.dll was not found" error when starting the application, which is correct, because the UIC code was not installed on the machine.

-- Release Mode: I am able to start the application, load the sample JPG files, and then right-click, at which point the application crashes. Again, the UIC code is not installed, but the behavior appears to match what you are seeing.

Please try this yourself (remove the UIC library from your path so it can't be located), it might shed some light on a different part of your application that could be the root source of the problem.

Paul

Hello Paul, thank you for your test. Actually In my program, the UIC just is called when the test image is clicked.

As you suggested, Ialso did these tests (take UIC**.dlls out). Both modescame upsame message (UIC_core-1.0.dll was not found..) while my program can not be started. Of course, I had MS 2005installed onthe machine.

I also like you know some testing behaviors for runningsamples downloaded from your web.
Sample IPP Picnic in 64 bits has same behavior, it can not run. But its 32-bit sample is ok.
Thesample (need IPP butno needUIC) like ippIP Demo_em64t is ok in my 64-bit machine.

Let me know if you have more finding and suggestions

Thank you for the helps
fanguts
0 Kudos
Ying_H_Intel
Employee
575 Views
Quoting - fanguts

Hello Paul, thank you for your test. Actually In my program, the UIC just is called when the test image is clicked.

As you suggested, Ialso did these tests (take UIC**.dlls out). Both modescame upsame message (UIC_core-1.0.dll was not found..) while my program can not be started. Of course, I had MS 2005installed onthe machine.

I also like you know some testing behaviors for runningsamples downloaded from your web.
Sample IPP Picnic in 64 bits has same behavior, it can not run. But its 32-bit sample is ok.
Thesample (need IPP butno needUIC) like ippIP Demo_em64t is ok in my 64-bit machine.

Let me know if you have more finding and suggestions

Thank you for the helps
fanguts
Hi fanguts,

We release IPP 6.1 update 2 in the two days. As I knew, the problemshould have beenfixed in the version. You are welcomed to try the sample.

All of install package and uic sample are available in Intel register center. You may go there to download.
or from the below URL
<<>>
<<>>

Regards,
Ying

0 Kudos
Reply