Re: [eigen] Optimization advice for a specific expression |
[ Thread Index | Date Index | More lists.tuxfamily.org/eigen Archives ]
You could also try I4x4.triangularView<Eigen::Upper>() += ...;and copy the upper half to the lower afterwards (if needed). This however likely reduces vectorization possibilities (try it out, look at the generated assembly).
Other than that:* What exactly do you mean by homogeneous? Can you make any assumptions on the determinant of G? (Calculating the det didn't not seem to be the bottleneck, though) * Is the same E used for lots of G? Does it have any special form (e.g. low rank, or Identity+lowRank)
Christoph On 2016-02-04 16:17, Alberto Luaces wrote:
Gael Guennebaud writes:Hi, you can avoid one temp with: I4x4.noalias() += ...;Ok. Nevertheless, there is no big difference.Then slowndown might come from the compiler doing a bad job at inlining. What is your compiler?gcc version 5.3.1 20160121 (Debian 5.3.1-7)version?libeigen3-dev 3.3~beta1-2What are the exact compilation flags?-msse4 -O3 -DNDEBUG -std=gnu++11 ...aside from -I preprocessor flags. "-msse4" seems to make no difference either.Also, please paste the complete declaration of call_dense_assignment_loop.Eigen::internal::call_dense_assignment_loop<Eigen::Matrix<double, 4, 4, 0, 4, 4>, Eigen::Product<Eigen::Product<Eigen::Matrix<double, 4, 4, 0, 4, 4>, Eigen::Matrix<double, 4, 4, 0, 4, 4>, 0>, Eigen::Matrix<double, 4, 4, 0, 4, 4>, 1>, Eigen::internal::assign_op<double> > Thanks!
-- Dipl. Inf., Dipl. Math. Christoph Hertzberg Universität Bremen FB 3 - Mathematik und Informatik AG Robotik Robert-Hooke-Straße 1 28359 Bremen, Germany Zentrale: +49 421 178 45-6611 Besuchsadresse der Nebengeschäftsstelle: Robert-Hooke-Straße 5 28359 Bremen, Germany Tel.: +49 421 178 45-4021 Empfang: +49 421 178 45-6600 Fax: +49 421 178 45-4150 E-Mail: chtz@xxxxxxxxxxxxxxxxxxxxxxxx Weitere Informationen: http://www.informatik.uni-bremen.de/robotik
Mail converted by MHonArc 2.6.19+ | http://listengine.tuxfamily.org/ |