$include_dir="/home/hyper-archives/boost/include"; include("$include_dir/msg-header.inc") ?>
From: Andy Glew (glew_at_[hidden])
Date: 1999-09-03 10:07:04
> Have you looked at blitz++ library ? It uses no assembler, just templates etc. I'd be interested to see how it compared to raw
assembler,
> especially with a decent compiler.
A fellow from Argonne gave a talk at the UW last year about
"High Level Scientific Coding in C++".
Per him, they use Blitz++ and other C++ libraries extensively.
After I interrogated him extensively, it turned out:
(a) they write all of their code using Blitz++, etc., syntax
(b) they found that the template implementation was too slow
for real work, although uaseful for debugging.
(c) for real, production, compilation, they wrote a
Blitz++ to C compiler, that accepts high level statements
using matrices, etc., in the Bltiz++ syntax,
and which performs the usual optimizations that you would
expect a good vectorizing compiler to do, finally emitting
C assembly code.
My notes have his graphs indicating a 2X performance improvement
when using the Blitz++ to C translator, compared to using vanilla templates.