Frank,<br>
<br>
I have a Continuous itk build (BillsBasement) that is built with -O3
and gcc4.0. As you can see, the vnl_test_svd and vnl_test_qr tests both
fail. I used to build with -O2 and they passed.<br>
<br>
<a href="http://www.itk.org/Testing/Sites/BillsBasement/Linux-gcc40-release/20060910-1145-Continuous/Test.html">http://www.itk.org/Testing/Sites/BillsBasement/Linux-gcc40-release/20060910-1145-Continuous/Test.html</a><br>

<br>
My advice, in general, avoid -O3. It's amazing after all these years,
compiler writers still have optimization woes. I remember in 1969,
running an IBM 360/44 FORTRAN compiler. Almost all of the bug reports
were due to optimization failures. The workaround was always, turn off
the optimization.<br>
<br>
Bill<br>
<br><br><div><span class="gmail_quote">On 9/9/06, <b class="gmail_sendername">Luis Ibanez</b> &lt;<a href="mailto:luis.ibanez@kitware.com">luis.ibanez@kitware.com</a>&gt; wrote:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Hi Frank,<br><br>You may want to try with ITK CVS version,<br>A couple of VXL bugs were fixed recently that were related to infinte<br>loops that happen only in -O3 optimization.<br><br>See the following email in the developers list:
<br><a href="http://www.itk.org/mailman/private/insight-developers/2006-September/008389.html">http://www.itk.org/mailman/private/insight-developers/2006-September/008389.html</a><br><br>Please let us know what you find.<br>
<br><br>&nbsp;&nbsp; Thanks<br><br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Luis<br><br><br>--------------------<br>Frank Miller wrote:<br>&gt; This appears to be an upstream problem. I downloaded vxl and there is no<br>&gt; &quot;test_svd&quot; there either.<br>
&gt;<br>&gt; However, on a more positive note, I recompiled itk with -O2<br>&gt; optimization, instead of -O3, and the problem seems to be gone.<br>&gt;<br>&gt; Optimization bugs are the worst.<br>&gt;<br>&gt; Frank<br>&gt;
<br>&gt; Frank Miller wrote:<br>&gt;<br>&gt;&gt; Greetings,<br>&gt;&gt;<br>&gt;&gt; Im having a very strange problem with the svd algorithm. My experience<br>&gt;&gt; is consistent with the problem mentioned in the comments at line 92 in
<br>&gt;&gt; the file<br>&gt;&gt;<br>&gt;&gt;&nbsp;&nbsp; Utilities/vxl/core/vnl/algo/vnl_svd.txx<br>&gt;&gt;<br>&gt;&gt; If this is the source of my problem, the comments state that the<br>&gt;&gt; &quot;core/vnl/tests/test_svd&quot; should have failed. However, I cant find
<br>&gt;&gt; this test. I turned BUILD_TESTING on and there is no &quot;test_svd&quot;. There<br>&gt;&gt; is a &quot;vnl_test_all&quot; which when run states that<br>&gt;&gt;<br>&gt;&gt;&nbsp;&nbsp; The registered test names are:<br>
&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;test_bignum<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;test_complex<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;test_inverse<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;test_diag_matrix<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;test_file_matrix<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;test_finite<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;test_math<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;test_matrix
<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;test_matrix_exp<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;test_matrix_fixed<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;test_matrix_fixed_ref<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;test_numeric_traits<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;test_rational<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;test_real_polynomial<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;test_resize
<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;test_sample<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;test_sym_matrix<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;test_transpose<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;test_fastops<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;test_vector<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;test_vector_fixed_ref<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;test_gamma<br>
&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;test_random<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;test_arithmetic<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;test_hungarian_algorithm<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;test_integrant<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;test_bessel<br>&gt;&gt;<br>&gt;&gt; all of which pass on my system.<br>
&gt;&gt;<br>&gt;&gt; How can I run this test on my system? Is this test not being run by<br>&gt;&gt; Dart? Any help would be much appreciated,<br>&gt;&gt;<br>&gt;&gt;<br>&gt;&gt; Below is some more details if you are interested.
<br>&gt;&gt;<br>&gt;&gt; My system is 32bit Linux, my cpu is Intel Xeon, my compiler is<br>&gt;&gt; gcc-4.1.1, and Im using itk-2.8.1.<br>&gt;&gt;<br>&gt;&gt; When updating any pipeline that has a particular image as an input, I
<br>&gt;&gt; get the following message printed to standard error:<br>&gt;&gt;<br>&gt;&gt;&nbsp;&nbsp; /home/frank/opt/src/itk/2.8.1/InsightToolkit-2.8.1/Utilities/vxl/core/<br>&gt;&gt;&nbsp;&nbsp; vnl/algo/vnl_svd.txx: suspicious return value (3) from SVDC
<br>&gt;&gt;&nbsp;&nbsp; /home/frank/opt/src/itk/2.8.1/InsightToolkit-2.8.1/Utilities/vxl/core/<br>&gt;&gt;&nbsp;&nbsp; vnl/algo/vnl_svd.txx: M is 3x3<br>&gt;&gt;&nbsp;&nbsp; M = [ ...<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;0.9788850881159 -0.1393774186727 -5.6885917960696<br>
&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;1.0096153244376&nbsp;&nbsp;0.1351351488847&nbsp;&nbsp;5.5154448566180<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;0.0000000300788 -1.3927854783833&nbsp;&nbsp;1.1043995835373&nbsp;&nbsp;]<br>&gt;&gt;<br>&gt;&gt; The correct singular values for M are, according to octave, 8.0000,
<br>&gt;&gt; 1.4063, 1.4062.<br>&gt;&gt;<br>&gt;&gt; Here is a trace of the image:<br>&gt;&gt;<br>&gt;&gt;&nbsp;&nbsp; OrientedImage (0x83f0000)<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; RTTI typeinfo:&nbsp;&nbsp; itk::OrientedImage&lt;int, 3u&gt;<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; Reference Count: 6
<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; Modified Time: 714<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; Debug: Off<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; Observers:<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; none<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; Source: (0x83eb4c8)<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; Source output index: 0<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; Release Data: On<br>
&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; Data Released: False<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; Global Release Data: Off<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; PipelineMTime: 238<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; UpdateMTime: 715<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; LargestPossibleRegion:<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Dimension: 3<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Index: [0, 0, 0]
<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Size: [256, 256, 17]<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; BufferedRegion:<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Dimension: 3<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Index: [0, 0, 0]<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Size: [256, 256, 17]<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; RequestedRegion:<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Dimension: 3
<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Index: [0, 0, 0]<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Size: [256, 256, 17]<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; Spacing: [1.40625, 1.40625, 7.99999]<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; Origin: [-37.7846, -241.523, 175.909]<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; Direction:<br>&gt;&gt;&nbsp;&nbsp; 
0.696096 -0.0991128 -0.711074<br>&gt;&gt;&nbsp;&nbsp; 0.717949 0.0960961 0.689431<br>&gt;&gt;&nbsp;&nbsp; 2.13894e-08 -0.990425 0.13805<br>&gt;&gt;<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; PixelContainer:<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ImportImageContainer (0x83f01b8)<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; RTTI typeinfo:&nbsp;&nbsp; itk::ImportImageContainer&lt;unsigned long, int&gt;
<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Reference Count: 1<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Modified Time: 288<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Debug: Off<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Observers:<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; none<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Pointer: 0x83f01e8<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Container manages memory: true
<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Size: 1114112<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Capacity: 1114112<br>&gt;&gt;<br>&gt;&gt; Thanks,<br>&gt;&gt;<br>&gt;&gt; Frank<br>&gt;&gt; _______________________________________________<br>&gt;&gt; Insight-users mailing list
<br>&gt;&gt; <a href="mailto:Insight-users@itk.org">Insight-users@itk.org</a><br>&gt;&gt; <a href="http://www.itk.org/mailman/listinfo/insight-users">http://www.itk.org/mailman/listinfo/insight-users</a><br>&gt;<br>&gt; _______________________________________________
<br>&gt; Insight-users mailing list<br>&gt; <a href="mailto:Insight-users@itk.org">Insight-users@itk.org</a><br>&gt; <a href="http://www.itk.org/mailman/listinfo/insight-users">http://www.itk.org/mailman/listinfo/insight-users
</a><br>&gt;<br>&gt;<br><br><br>_______________________________________________<br>Insight-users mailing list<br><a href="mailto:Insight-users@itk.org">Insight-users@itk.org</a><br><a href="http://www.itk.org/mailman/listinfo/insight-users">
http://www.itk.org/mailman/listinfo/insight-users</a><br></blockquote></div><br>