|
Boost Users : |
Subject: Re: [Boost-users] Why Boost uBLAS
From: Ted Byers (r.ted.byers_at_[hidden])
Date: 2012-04-03 10:39:57
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
> -----Original Message-----
> From: boost-users-bounces_at_[hidden] [mailto:boost-users-
> bounces_at_[hidden]] On Behalf Of Oswin Krause
> Sent: April-03-12 9:23 AM
> To: boost-users_at_[hidden]
> Subject: Re: [Boost-users] Why Boost uBLAS
>
> 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_at_[hidden] 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_at_[hidden]
> http://lists.boost.org/mailman/listinfo.cgi/boost-users
Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net