Hi,I do classic bundle adjustment with Ceres and I have recently looked into boosting the performance a bit. It seems there is some need for parallelization.My setup is as follows:
- 2 K images
- 20 M image observations
- I am using ITERATIVE_SCHUR with SCHUR_JACOBI preconditioner
- I have enabled suite_sparse, custom blas, schur specializations and OpenMP
- I have compiled ceres with MSVC 2015 x64 for Windows 10
- Virtually all time is spent in ImplicitSchurComplement::RightMultiply().
- RightMultiply() consitently takes ~1.6 s to execute.
- RightMultiply() utilizes 12.5% (1/8) of my processing power(I have 8 physical cores).
- This is quite efficient. Single threaded code often only reaches ~6% (1/16 logical cores)
- RightMultiply() is called increasingly often. (22x in the first iteration and 280x in the fourth.)
So my question is: Does this setup look sane, and if yes, would it be a huge efffort to implement a parallelized version of ImplicitSchurComplement::RightMultiply()?
I'd be willing to contribute. I guess MatrixVectorMultiply<Dynamic, Dynamic>() is where the actual work is done.
Thanks for the good work!Björn
--
You received this message because you are subscribed to the Google Groups "Ceres Solver" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ceres-solver...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/ceres-solver/CAF8Ue3nv6B0-S171tmuq8mH%2BZCOn6eWAP5P_XCJUS1HjnSzkAw%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.
--
You received this message because you are subscribed to the Google Groups "Ceres Solver" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ceres-solver...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/ceres-solver/CAF8Ue3kgV67%3DasdA-yAOUc%3DjCTz7BMX%2Bpd6uvje5V%3Dpbijudhg%40mail.gmail.com.
--
You received this message because you are subscribed to the Google Groups "Ceres Solver" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ceres-solver...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/ceres-solver/CAF8Ue3n77XdViS8vchc%3DGdfDxzM-sWgK0Fvx_REu3_30K5aSTg%40mail.gmail.com.