Next: Basic Features
MV++ is a small, efficient, set of concrete vector and matrix
classes specifically designed for high performance numerical computing.
The MV++ package includes interfaces to the computational kernels found in the
Basic Linear Algebra Subprograms (BLAS), such as scalar updates,
vector sums, and dot products. The idea is to utilize vendor-supplied,
or optimized BLAS routines that are fine-tuned for particular platforms.
The various MV++ classes form the building blocks of
larger user-level libraries such as SparseLib++ and
LAPACK++. The MV++
library was put together with the following principles in mind:
- a simple numerical vector and column-oriented
dense matrix class.
- minimal overhead in constructing, assigning, and
copying vectors and matrices
- performance competitive with optimized Fortran
- data structure compatibility with Fortran libraries
- concrete classes, no complicated inheritance hierarchy,
- support generic element types through templated paramters
- support operations with contiguous subvectors and
submatrices (e.g. zeroing
out a section of a vector.)
- optional runtime support for array-bounds checking.
Tue Nov 7 18:40:56 EST 1995