MetaCart Sign in to MyCiteSeerX

Include Citations | Advanced Search | Help

Disambiguated Search | Include Citations | Advanced Search | Help

The Matrix Template Library: A Unifying Framework for Numerical Linear Algebra (1998) [9 citations — 2 self]

by Jeremy G. Siek ,  Andrew Lumsdaine
In Parallel Object Oriented Scientific Computing. ECOOP
Add To MetaCart

Abstract:

. We present a unified approach for expressing high performance numerical linear algebra routines for a class of dense and sparse matrix formats and shapes. As with the Standard Template Library [7], we explicitly separate algorithms from data structures through the use of generic programming techniques. We conclude that such an approach does not hinder high performance. On the contrary, writing portable high performance codes is actually enabled with such an approach because the performance critical code sections can be isolated from the algorithms and the data structures. 1 Introduction The traditional approach to writing basic linear algebra routines is a combinatorial affair. There are typically four precision types that need to be handled (single and double precision real, single and double precision complex), several dense storage types (general, banded, packed), a multitude of sparse storage types (the Sparse BLAS Standard Proposal includes 13 [1]), as well as row and column or...

Citations

610 A set of Level 3 Basic Linear Algebra Subprograms – Dongarra, Croz, et al. - 1990
413 T.: \Basic Linear Algebra Subprograms for Fortran Usage – Lawson, Kincaid, et al. - 1979
260 ScaLAPACK Users’ Guide – Blackford, Choi, et al. - 1997
208 SPARSKIT: A basic toolkit for sparse matrix computations – Saad - 1990
202 The Standard Template Library – Stepanov, Lee - 1994
36 Algorithm 656: An extended set of basic linear algebra subprograms: Model implementation and test programs – DONGARRA, CROZ, et al. - 1988
27 BlockSolve95 users manual: Scalable library software for the parallel solution of sparse linear systems – Jones, Plassmann - 1995
14 A rational approach to portable high performance: The basic linear algebra instruction set (BLAIS) and the fixed algorithm size template – Siek, Lumsdaine - 1998
14 de Geijn, Using PLAPACK – van - 1997
5 and Associates C++ User's Guide – Kuck - 1988
2 draft chapter 3: Sparse BLAS – standard - 1997
2 Template Numerical Toolkit (TNT) for Linear Algebra – Pozo
1 The role of abstraction in highperformance computing – McCandless, Lumsdaine - 1997
1 Vladimir Kotlyar, Keshav Pingali. Compiling parallel code for sparse matrix applications – Stodghill - 1997