The matrix template library: A generic programming approach to high performance numerical linear algebra

45Citations
Citations of this article
37Readers
Mendeley users who have this article in their library.
Get full text

Abstract

We present a unified approach for building high-performance numerical linear algebra routines for large classes of dense and sparse matrices. As with the Standard Template Library [1], we separate algo- rithms from data structures using generic programming techniques. Such an approach does not hinder high performance, rather, writing porta- ble high-performance codes is enabled because the performance-critical code can be isolated from the algorithms and data structures. We ad- dress the performance portability problem for architecture-dependent algorithms such as matrix-matrix multiply. Recently, code generation systems, such as PHiPAC [2] and ATLAS [3], have allowed algorithms to be tuned to particular architectures. Our approach is to use template metaprograms [4] to directly express performance-critical, architecture- dependent, sections of code.

Cite

CITATION STYLE

APA

Siek, J. G., & Lumsdaine, A. (1998). The matrix template library: A generic programming approach to high performance numerical linear algebra. In Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) (Vol. 1505, pp. 59–70). Springer Verlag. https://doi.org/10.1007/3-540-49372-7_6

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free