Otherwise, we've seen a 8-10x performance increase in SolveSpace (CAD) in some situations after switching from home-grown matrix operations to Eigen.
Eigen: A C++ template library for linear algebra
11–20 of 85 posts
Re: Eigen: A C++ template library for linear algebra
#12Re: Eigen: A C++ template library for linear algebra
#13Re: Eigen: A C++ template library for linear algebra
#14Using it for years, and mostly happy with that library. The performance is awesome for very long vectors / large matrices. It’s less than ideal for small things when the size is known at compile-time. If one knows SIMD intrinsics, in some of these cases the Eigen’s implementation can be outperformed by a large factor like 2-4. Also it’s very hard to mess with RAM layout of some things (like sparse matrices), just too…
https://stackoverflow.com/questions/58071344/is-eigen-slow-a...
Re: Eigen: A C++ template library for linear algebra
#15Eigen is a great library. A similar one to consider that can at times be slightly easier to use coming from a python background is armadillo: http://arma.sourceforge.net/
Re: Eigen: A C++ template library for linear algebra
#16BLAS vs Eigen Go
Re: Eigen: A C++ template library for linear algebra
#17God bless Eigen, I am using it to implement the state matrices of a Kalman Filter and it's a joy to use its APIs.
Re: Eigen: A C++ template library for linear algebra
#18Using it for years, and mostly happy with that library. The performance is awesome for very long vectors / large matrices. It’s less than ideal for small things when the size is known at compile-time. If one knows SIMD intrinsics, in some of these cases the Eigen’s implementation can be outperformed by a large factor like 2-4. Also it’s very hard to mess with RAM layout of some things (like sparse matrices), just too…
Can confirm the poor performance on small matrices (less than 20x20). This is a problem particularly for robotics applications when your entities are positions, velocities, etc. https://stackoverflow.com/questions/58071344/is-eigen-slow-a...
Re: Eigen: A C++ template library for linear algebra
#19My only complaint is that using OpenMP Eigen can be slower with SMT than without SMT. They even suggest telling to use half as many threads as you have "cores" when "cores" means twice as many due to SMT. Otherwise, we've seen a 8-10x performance increase in SolveSpace (CAD) in some situations after switching from home-grown matrix operations to Eigen.
Re: Eigen: A C++ template library for linear algebra
#20A great library, a cornerstone. Many big libraries build on top of it (e.g. OpenCV, PointCloud Library)