Filed: http://code.google.com/p/ceres-solver/issues/detail?id=34&thanks=34&ts=1338313625
On Tue, May 29, 2012 at 10:47 AM, Keir Mierle <[email protected]> wrote: > *[email protected]* > > Hi Stephan, > > Thanks for tracking this down! Yes, your patch works but is not the right > long-term fix for Ceres. I am one of the Ceres authors and the Windows port > of Ceres isn't quite there yet; there is a couple test failures that I > hadn't tracked down. I believe this patch may fix one of them. The version > of Ceres in Blender is a merge of master with the "windows" branch that we > haven't merged to master yet. Unfortunately I can't spend the time to make > a proper fix until this weekend. > > Thanks for the patch and spending the time to track this down, > Keir > > > On Mon, May 28, 2012 at 6:10 PM, Stephan Kassemeyer <[email protected]> wrote: > >> Sorry if this mailing list is not the appropriate place >> to discuss this... I guess it is more a problem of ceres, which >> stores Eigen3 objects in structs without properly handling 128 bit >> alignment. >> The following is not a proper patch, since InnerContainer >> is more general and can also store non-Eigen3-objects, but >> the patch fixes the segfaults on my system by ensuring alignment >> for Eigen3-objects: >> >> >> Index: extern/libmv/third_party/ceres/include/ceres/internal/fixed_array.h >> =================================================================== >> --- extern/libmv/third_party/ceres/include/ceres/internal/fixed_array.h >> (revision 47131) >> +++ extern/libmv/third_party/ceres/include/ceres/internal/fixed_array.h >> (working copy) >> @@ -136,7 +136,8 @@ >> // and T must be the same, otherwise callers' assumptions about use >> // of this code will be broken. >> struct InnerContainer { >> - T element; >> + EIGEN_MAKE_ALIGNED_OPERATOR_NEW >> + T element; >> }; >> >> >> >> >> -------- Original-Nachricht -------- >> > Datum: Tue, 29 May 2012 02:15:05 +0200 >> > Von: "Stephan Kassemeyer" <[email protected]> >> > An: bf-blender developers <[email protected]> >> > Betreff: Re: [Bf-committers] Eigen3 128bit alignment issues in ceres >> >> > The assertion occured on linux, using gcc 4.4.3. >> > Here is a backtrace: >> > http://www.pasteall.org/32377 >> > >> > -------- Original-Nachricht -------- >> > > Datum: Mon, 28 May 2012 14:01:07 +0600 >> > > Von: Sergey Sharybin <[email protected]> >> > > An: bf-blender developers <[email protected]> >> > > Betreff: Re: [Bf-committers] Eigen3 128bit alignment issues in ceres >> > >> > > Hi, >> > > >> > > It'll help knowing ehich operation system and compiler you're using. >> > > >> > > Thanks. >> > > >> > > On Mon, May 28, 2012 at 7:14 AM, Stephan Kassemeyer <[email protected]> >> > wrote: >> > > >> > > > Hi, >> > > > >> > > > in tomato branch, I get a segfault when doing video tracking. >> > > > I turned on debug mode and got an Eigen3 assertion >> > > > EIGEN_MAKE_UNALIGNED_ARRAY_ASSERT which mentions this >> > > > web page: >> > > > http://eigen.tuxfamily.org/dox-devel/TopicUnalignedArrayAssert.html >> > > > >> > > > I tried their suggestions, so far without any success. >> > > > The only thing that helps is to disable all >> > > > vectorization with the following definitions: >> > > > CMAKE_CXX_FLAGS:STRING=-D EIGEN_DONT_VECTORIZE -D >> > > > EIGEN_DISABLE_UNALIGNED_ARRAY_ASSERT >> > > > >> > > > In the backtrace, >> > > > the last non-Eigen3 code is >> > > > >> > > > FixedArray<JetT, (256 * 7) / sizeof(JetT)> x( >> > > > N0 + N1 + N2 + N3 + N4 + N5 + num_outputs); >> > > > >> > > > in >> extern/libmv/third_party/ceres/include/ceres/internal/autodiff:303 >> > > > >> > > > I was compiling using cmake. >> > > > If you have any ideas, please let me know, I can test. >> > > > >> > > > regards, >> > > > Stephan Kassemeyer. >> > > > -- >> > > > NEU: FreePhone 3-fach-Flat mit kostenlosem Smartphone! >> > > > Jetzt informieren: >> http://mobile.1und1.de/?ac=OM.PW.PW003K20328T7073a >> > > > _______________________________________________ >> > > > Bf-committers mailing list >> > > > [email protected] >> > > > http://lists.blender.org/mailman/listinfo/bf-committers >> > > > >> > > >> > > >> > > >> > > -- >> > > With best regards, Sergey Sharybin >> > > _______________________________________________ >> > > Bf-committers mailing list >> > > [email protected] >> > > http://lists.blender.org/mailman/listinfo/bf-committers >> > >> > -- >> > Empfehlen Sie GMX DSL Ihren Freunden und Bekannten und wir >> > belohnen Sie mit bis zu 50,- Euro! https://freundschaftswerbung.gmx.de >> > _______________________________________________ >> > Bf-committers mailing list >> > [email protected] >> > http://lists.blender.org/mailman/listinfo/bf-committers >> >> -- >> Empfehlen Sie GMX DSL Ihren Freunden und Bekannten und wir >> belohnen Sie mit bis zu 50,- Euro! https://freundschaftswerbung.gmx.de >> _______________________________________________ >> Bf-committers mailing list >> [email protected] >> http://lists.blender.org/mailman/listinfo/bf-committers >> > > _______________________________________________ Bf-committers mailing list [email protected] http://lists.blender.org/mailman/listinfo/bf-committers
