|
Boost : |
Subject: Re: [boost] different matrix library?
From: Edward Grace (ej.grace_at_[hidden])
Date: 2009-08-11 06:54:59
>> What is the issue with uBLAS?
>
> in my opinion a piece of software must be targeted to target users
> (excuse for a pun)
> i see a generic scientist
Hmm, a generic scientist.... There's a thought.
> as target user who already knows about
> matrix calculus and may not know about blas
> for such person writing
> u = A*v + w
> is much more natural than that of blas terms
In principle yes - however the efficient implementation of the above
is likely to be a lot tricker than it might seem.
The 'advantage' of BLAS and other routines as I see it is many many
man-years of optimisation and tweaking on various architectures as
well as good generic implementations (ATLAS). I'd venture that it's
still going to be hard to beat!
> i think that user must focus on the design and the intent rather
> than how to express the thing in blas terms
I am slightly unsure, is your proposal a rewrite of the linear
algebra routines or a wrapper that conceptually maps calls in the
following manner?
yourlib::operator*(foo,bar) -> ublas::prod(foo,bar)
Are you aware of Blitz++ and POOMA?
Blitz offers a very (for the mathematical physicist) intuitive tensor-
like approach, an example:
// This expression will set
//
// c = a * b
// ijk ik kj
C = A(i,k) * B(k,j);
-ed
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk