[eigen] Calls to copyPacketByOuterInner: when do they happen? |
[ Thread Index |
Date Index
| More lists.tuxfamily.org/eigen Archives
]
Hello everyone,
I am a very happy user of the Eigen3 library in my library RBDL, the
Rigid Body Dynamics Library (https://rbdl.bitbucket.org) which is an
open-source implementation of state-of-the art algorithms for both
forward and inverse dynamics.
Recently I have added more sophisticated joint models which reduce some
iterations required in the recursive algorithms in RBDL. When doing some
benchmarking it turns out that my changes provide a nice speedup (2.0X)
in some algorithms, while in others it is unpleasantly slower (0.5X).
Profiling (using google perftools) suggests that the code spends ~20%
more time in the copyPacketByOuterInner when using the newer joint models.
The question is now: what operations in Eigen result in calling of the
function and can they be avoided?
The code in question can be found here:
> https://bitbucket.org/MartinFelis/rbdl-experiments/src/54c0f3c8dd34f1d018ecf8c64474ace6d5a5b002/src/Dynamics.cc?at=default#cl-216
Cheers,
Martin
--
mail : martin.felis@xxxxxxxxxxxxxxxxxxxxx
phone : +49 6221 544983
office: IWR | Speyerer Str 6 | Room 319 | 69115 Heidelberg | Germany