This forum has been archived. All content is frozen. Please use KDE Discuss instead.

Speed Vs Reliability: What about the Latter?

Tags: None
(comma "," separated)
poiuytrewq
Registered Member
Posts
1
Karma
0
Question AND/OR Suggestion:

It has been a couple of days I have downloaded and used this library. I have got to say I am amazed by the
quality of the work and especially the ease of use and speed.

Still, I am not yet convinced I should invest time on porting some of my work previously based on calls to
Lapack, since I am not sure on HOW RELIABLE THIS LIBRARY REALLY IS?

Has it been thoroughly tested, at least the fundamental operations of linear algebra? Does this "lazy evaluation"
touch leave any room for hard to find bugs? Surely the version number suggests that it is mature, but it would be
nice to have this explicitly addressed in the project's web page.

Thanks for your time, and congratulations on everyone involved in this project!

Last edited by poiuytrewq on Sun Jun 21, 2009 8:38 pm, edited 1 time in total.
User avatar
bjacob
Registered Member
Posts
658
Karma
3
poiuytrewq wrote:Question AND/OR Suggestion:

It has been a couple of days I have downloaded and used this library. I have got to say I am amazed by the
quality of the work and especially the ease of use and speed.


Thanks!

Still, I am not yet convinced I should invest time on porting some of my work previously based on calls to
Lapack, since I am not sure on HOW RELIABLE THIS LIBRARY REALLY IS?


Short answer, since you're considering porting from Lapack: obviously Eigen isn't (yet) as mature and well-tested as Lapack.

Eigen is covered by a pretty extensive test suite:
http://bitbucket.org/eigen/eigen2/src/tip/test/

So it's pretty reliable already, but it's true that every now and then we find a fix to make. Now there are large difference between modules. The Core, Array, LU modules are very reliable and I'd be surprised if there were big problems remaining in them. Other modules, which are marked "experimental", are, well, experimental.

Does this "lazy evaluation"
touch leave any room for hard to find bugs?


It sure is a subtle point, but compared to other c++ libraries doing lazy evaluation, we do make the user's life easier, e.g. matrix product defaults to immediate evaluation, etc. See:
http://eigen.tuxfamily.org/dox/TopicLazyEvaluation.html

It's true that we could document stuff better, i just notice that transpose() dox lacks a warning, fixing that....

Surely the version number suggests that, but it would be nice to have
this readily addressed in the project's web page.

The version number 2.0 means that it's decently stable and supported, but I don't see any version number indicating that a library would be as mature as Lapack... let's not over interprete version numbers!

Thanks for your time, and congratulations on everyone involved in this project!

Thanks!


Join us on Eigen's IRC channel: #eigen on irc.freenode.net
Have a serious interest in Eigen? Then join the mailing list!


Bookmarks



Who is online

Registered users: Bing [Bot], Google [Bot], Sogou [Bot]