Boost logo

Glas :

Re: [glas] Templated BLAS and LAPACK routines

From: Karl Meerbergen (Karl.Meerbergen_at_[hidden])
Date: 2006-08-17 06:01:58

Hi Pieter,

Thanks. I'll have a look at it. In glas, expressions can be evaluated
using BLAS. At this stage, we only have a limited version for vectors.


Pieter Collins wrote:

>As part of a project on rigorous set-based numerics, I need some generic
>linear algebra routines in C++. Unfortunately, none of the packages I
>have found to date support everything I need (GMP number types and
>Interval types; solution of linear equations, QR factorisation and
>singular value decomposition; dense and sparse matrices; Matrix and
>Vector classes). There are a number of partial solution (e.g. Boost
>ublas has linear equations; MTL has an interface to Fortran LAPACK; JAMA
>has the algorithms but poor types), but nothing which does everything I
>want, and many libraries have incompatible classes.
>As a temporary solution, I have developed my some of my own code. I
>think it's valuable to separate algorithms from data structures, as in
>the C++ STL and the Fortran BLAS/LAPACK framework. Hence computational
>core of this code are a templated BLAS library, TBLAS, and a templated
>library TLAPACK implementing a limited subset of LAPACK. I made the
>TBLAS library by judiciously stream-editing the GNU Scientific Library
>(GSL) C BLAS, but the TLAPACK routines needed more work. I also wrote a
>simple class interface, SLA, with some expression templates.
>I think the TBLAS and TLAPACK libraries are worth further development
>(the code isn't very clean, not fully tested, can problably be made more
>general, unoptimized, the LAPACK routines are minimal, and maybe the
>interface could be simplified). Ideally, these packages would eventually
>be suitable for inclusion in the Boost C++ library. I think it's
>important that the packages can be used independantly of any class-based
>linear algebra package. Unfortunately, I don't have time to work on this
>much myself, so it would be great if somebody else would be willing to
>take over the main development.
>If you want to take a look at the packages, you can download them at
>(Apologies for cross-posting)
>glas mailing list