Good day, i started using boost one month ago. Now i saw that boost is offering uBLAS to use/manipulate matrices. So my question is: Why is the wheel invented totally new? The uBLAS-Team even writes that they focus an "correct algorithm" and that "performance will be improved later". Why cant boost simply adpot http://arma.sourceforge.net/ or Newmat 11: http://www.robertnz.net/nm11.htm#refer I used Newmat in many complex commercial projects where performance was very important. Newmat is easy to use and I dont now any bugs. Maybe the interface is not totally stl compatible, but this library is very easy and intuitive to use. What do you think about this? -- Empfehlen Sie GMX DSL Ihren Freunden und Bekannten und wir belohnen Sie mit bis zu 50,- Euro! https://freundschaftswerbung.gmx.de
Hi, I think you have a misconception there: Armadillo is the reinventing of the wheel, uBLAS is much much older (I think it was created around 2002 or so). There are strong points against uBLAS but also a few quite good in favour of it. For example neither newmat nor armadillo support sparse vectors. uBLAS doesn't have maximum performance but a very rich feature set which is hard to find in any other library. Since I am also only a boost user I can not answer "why don't you adopt X?" questions :). Greetings, Oswin On 2012-04-03 11:21, delryn@gmx.de wrote:
Good day,
i started using boost one month ago. Now i saw that boost is offering uBLAS to use/manipulate matrices. So my question is: Why is the wheel invented totally new? The uBLAS-Team even writes that they focus an "correct algorithm" and that "performance will be improved later".
Why cant boost simply adpot http://arma.sourceforge.net/
or Newmat 11:
http://www.robertnz.net/nm11.htm#refer
I used Newmat in many complex commercial projects where performance was very important. Newmat is easy to use and I dont now any bugs. Maybe the interface is not totally stl compatible, but this library is very easy and intuitive to use.
What do you think about this?
-----Original Message----- From: boost-users-bounces@lists.boost.org [mailto:boost-users- bounces@lists.boost.org] On Behalf Of Oswin Krause Sent: April-03-12 9:23 AM To: boost-users@lists.boost.org Subject: Re: [Boost-users] Why Boost uBLAS
Hi,
I think you have a misconception there: Armadillo is the reinventing of
The question could be turned around, as "Why not Boost uBLAS?" It is good to have options. And it is good to redevelop or revise older libraries as new technologies become available, and new methods learned. I remember using the old matrix algebra libraries that had been written in Fortran (the first of many languages I learned) many, many decades ago. But C++, let alone expression templates or template metaprogramming, didn't exist then. That new technology has provided opportunities for optimization that just didn't exist when I started programming so many decades ago. And who knows, maybe someone will come up with something new next year that provides more improvement still. I can make my best C++ code faster than my fastest Fortran, and it would not surprise me if down the road there are changes to C++, or perhaps a completely new language, that provides for better speed still. I would hope that when that day comes, there are new libraries supporting matrix algebra (among other things) that take advantage of them, or that the existing ones evolve to do so. As an old guy, I hope there will always be bright young upstarts that take a good look at what we've accomplished and says to himself, "hey, that's great but I can do it better." And if such a lad asked me, I'd encourage him to try. I don't think your Ferrari would go so fast if it had to roll on the wheels supporting the average 5th century ox-cart. ;-) There are good arguments for continuing to use the old, stable libraries, and even going an extra mile or three to develop wrappers that let you use them in languages other than that in which they were first written, but that can't imply that we should stop trying to improve them, even if that means throwing away large chunks of them and redeveloping them in completely different ways. And I say this as one who is just beginning to study uBLAS himself. I will soon learn for myself how well it fits my needs relative to other options, like Eigen or GSL. Cheers Ted the
wheel, uBLAS is much much older (I think it was created around 2002 or so). There are strong points against uBLAS but also a few quite good in favour of it. For example neither newmat nor armadillo support sparse vectors. uBLAS doesn't have maximum performance but a very rich feature set which is hard to find in any other library.
Since I am also only a boost user I can not answer "why don't you adopt X?" questions :).
Greetings, Oswin
On 2012-04-03 11:21, delryn@gmx.de wrote:
Good day,
i started using boost one month ago. Now i saw that boost is offering uBLAS to use/manipulate matrices. So my question is: Why is the wheel invented totally new? The uBLAS-Team even writes that they focus an "correct algorithm" and that "performance will be improved later".
Why cant boost simply adpot http://arma.sourceforge.net/
or Newmat 11:
http://www.robertnz.net/nm11.htm#refer
I used Newmat in many complex commercial projects where performance was very important. Newmat is easy to use and I dont now any bugs. Maybe the interface is not totally stl compatible, but this library is very easy and intuitive to use.
What do you think about this?
_______________________________________________ Boost-users mailing list Boost-users@lists.boost.org http://lists.boost.org/mailman/listinfo.cgi/boost-users
on Tue Apr 03 2012, delryn-AT-gmx.de wrote:
Good day,
i started using boost one month ago. Now i saw that boost is offering uBLAS to use/manipulate matrices. So my question is: Why is the wheel invented totally new? The uBLAS-Team even writes that they focus an "correct algorithm" and that "performance will be improved later".
Why cant boost simply adpot http://arma.sourceforge.net/
or Newmat 11:
http://www.robertnz.net/nm11.htm#refer
I used Newmat in many complex commercial projects where performance was very important. Newmat is easy to use and I dont now any bugs. Maybe the interface is not totally stl compatible, but this library is very easy and intuitive to use.
What do you think about this?
It would be nice to have better linear algebra libraries in Boost. The problem is that Boost doesn't "simply adopt" anything; that's not how we operate. Someone would have to submit the library to the formal review process (http://www.boost.org/community/reviews.html) and take responsibility for its future in Boost. Best regards, -- Dave Abrahams BoostPro Computing http://www.boostpro.com
participants (4)
-
Dave Abrahams
-
delryn@gmx.de
-
Oswin Krause
-
Ted Byers