This is the mail archive of the
gsl-discuss@sourceware.cygnus.com
mailing list for the GSL project.
Re: [this is the full note] the game's afoot, Watson
- To: gsl-discuss at sourceware dot cygnus dot com
- Subject: Re: [this is the full note] the game's afoot, Watson
- From: Edward Jason Riedy <ejr at CS dot Berkeley dot EDU>
- Date: Sun, 26 Sep 1999 20:51:10 -0700
- cc: Gerard Jungman <jungman at lanl dot gov>
[I was just skimming your mail archive and saw this. It's an
occasional topic of conversation at Berkeley. Hopefully this
isn't too out-of-place.]
And Gerald Jungman writes on C++ linear algebra packages:
- If you want to understand issues and methods, look at the
- Blitz++ and TNT projects. Those are probably the two high
- quality games in town.
Also be sure to look at MTL (http://www.lsc.nd.edu/research/mtl/).
The MTL is a great system for linear algebra libraries, although
it's license is too restrictive. Dr. Lumsdaine is at LBL for a
few more months and will probably have an impact on a future C++
linear algebra semi-standard.
Blitz++ is more a matrix package than a linear algebra package.
They both provide a high-performance matrix system, but Blitz++
focuses more on local operations within matrices and writing
operations like you would on paper. The MTL has more of a global-
operation focus (e.g. factorizations) and looks more `traditional.'
They are both good, but not necessarily for the same uses. The
MTL works well when you want a LAPACK that works well with C++
features. Blitz++ works well when you want a fast matrix without
the baggage, the type of thing you might want in an element-based,
sparse, iterative solver. I don't believe TNT is still active,
but I could be wrong.
[As a side note, the new version of a super-BLAS standard (BLAST)
is being finalized. The draft is at
http://www.netlib.org/cgi-bin/checkout/blast/blast.pl . To say
some of the new chapters are controversial is a bit of an
understatement. Just something to keep an eye on.]
Jason, in the process of writing a (hopefully free) C++ framework
for sparse direct methods, yet another goal that's lead to failure
too many times...