Glas :Re: [glas] summary of fonctionnalities |
From: Karl Meerbergen (Karl.Meerbergen_at_[hidden])
Date: 2005-02-09 13:42:24
> In fact, I have a question which is perhaps innapropriate
>
> What is the degree of generality which is possible to handle reasonably
> (I.e. possible to implement in a finite time ... !) using expression
> templates. (If one wants to have all type of dense, skyline and sparse
> matrices, rowwise and columnwise, be able to multiply any format with any
> other format with the result in any format ...)
> With a reduced set of functions like in MTL or what I did with Gmm++ it is
> possible to handle it, but with expression templates the number of cases to
> deal with seems to me to be exponentially great.
>
> Yves.
Hello Yves,
Simple expressions can be translated automatically to BLAS calls for the dense
case. Most expressions (in my experience) are a combination of BLAS
expressions, so this is no problem. For the sparse case, the situation is
different. There we need efficient implementations for specific operations.
When data are stored on disk, we also need specific algorithms. Similarly for
structrured matrices (Hankel e.g.), we need specific algorithms.
Andrew asked for which algorithms we want to use GLAS. We have to make a list,
which we have to provide, but it should be possible to add algorithms in the
future. We cannot predict what is needed in 5 years. Also BLAS evolved over
many years.
The minimum we need to provide is the functionality of the BLAS for dense and
sparse and structured matrices. This allows for developing more complicated
algorithms as LU factorization, QR factorization etc using these basic
operations (as LAPACK is built upon BLAS).
Best,
Karl