Release Version Problems....

Release Version Problems....

Deleted user's picture

hello,

we are using IPP, OpenCV and the Intel compiler 7.0... we are working with floating point images and we do some intensive processing of them [standard operations like division, multiplication etc.], mostly using IPP.

when we compile and run in Debug, the results are perfect, however, when we compile and run a Release version, the output is completely wrong, the images are very, very wrong...

we have tried all manner of combinations of the 'floating point precision' flags for the compiler [including no optimisation and full precision floating point operations v. slow], but have not been able to get correct results in Release mode.... although we do get varying results depending on the flags used... [the one attached is using the -Qpcn32 flag, some other results, the image was completely black, and others images had pixel values of -1#INF, which is strange, given the same code and same input files]

i was wondering if anyone had ever come across anything like this before and if there is a simple solution to it? perhaps we are not using the correct flags or there is something wrong with combining IPP with the compiler... i'm not sure, and the documentation is limited...

thanks,
dug.

10 posts / 0 new
Last post
For more complete information about compiler optimizations, see our Optimization Notice.
Deleted user's picture

attaching files doesn't seem to work... i tried to attach two 10k jpg images to illustrate my point... but they are not accepted...

Tim Prince's picture

Without more information, I can only suggest combinations of flags which have given most consistent numerical results. But first, if you haven't done so, run with /C and investigate possible un-initialized data or pointer over-runs.

For numerical consistency, /QxW /Op or, for better performance, /QxW /Qprec /Qfp_port , are often satisfactory choices. /Qpc32 may have similar effect to /Qfp_port, except that it may work correctly only in the absence of doubles. If you aren't using doubles, /QxK /G7 should have similar effect to /QxW. SSE code options minimize the situations where results depend on the /Qfp_port or /Qpc options. It may be difficult for others to reproduce your problems with 7.0, now that 7.1 is nearing end of full support.

I've noticed that file attachment works only with the browser versions which are specifically supported by the Intel sites (common versions of Explorer, Netscape and Mozilla). Even with those, the site sometimes fails to complete attachment before timing out, so try again.

Tim Prince's picture

With the hand-coded optimizations in MKL, numerical results are not the same as from compilation of public source. Usually, they are more accurate.

Deleted user's picture

example images can be seen here:

http://photos.groups.yahoo.com/group/opencv/lst?.dir=/IPP-Compiler-OpenC...

can anyone at intel advise? seems odd that Release build results are so much different from Debug build results...

Tim Prince's picture

Yahoo gives me a GROUP_CHECK denial when I try to go there with my personal account credentials.

Deleted user's picture

i think you will have to join the 'OpenCV' group... it is here:

http://groups.yahoo.com/group/OpenCV/

Deleted user's picture

"But first, if you haven't done so, run with /C and investigate possible un-initialized data or pointer over-runs."

i haven't tried this... do i do this in 'Debug' or 'Release'? like i say, i have no problems with un-initialized data or pointer over-runs in Debug mode, and the code [and input] is the same as in Release mode... just getting totally different results...

Deleted user's picture

i ahve tried all the flag settings you have suggested, none of them produce the correct results. and when i tried the /Qprec setting, it was slower than the Debug build AND the results were incorrect... i am confused.

Brandon Hewitt (Intel)'s picture

If you haven't done so already, please report this via Intel Premier Support at https://premier.intel.com/. If you don't have an account, get one by registering your compiler at http://intel.com/software/products/registrationcenter/.

Brandon
Intel Developer Support

For on-line assistance: http://support.intel.com/support/performancetools
For user forums: http://intel.com/ids/community
For product support information: http://www.intel.com/software/products/support
* Intel and Pentium are registered trademarks of Intel Corporation or its subsidiaries in the United States and other countries
* Other names and brands may be claimed as the property of others

Brandon Hewitt Technical Consulting Engineer Tools Knowledge Base: "http://software.intel.com/en-us/articles/tools" Software Product Support info: "http://www.intel.com/software/support"

Login to leave a comment.