Skip to main content

A Rational Approach to Portable High Performance: The Basic Linear Algebra Instruction Set (BLAIS) and the Fixed Algorithm Size Template (FAST) Library

  • Conference paper
  • First Online:

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 1543))

Abstract

We introduce the Basic Linear Algebra Instruction Set (BLAIS), a collection of high performance kernels for basic linear algebra that encapsulate small fixed size computations to provide building blocks for numerical libraries in C++. The computation sizes are template parameters of the kernels, so they can be easily configured to a specific architecture for portability. In this way the BLAIS delivers the power of such code generation systems as PHiPAC [1] and ATLAS [4]. BLAIS has a simple and elegant interface, so that one can write flexible-sized block algorithms without the complications of a code generation system. The BLAIS are implemented using the Fixed Algorithm Size Template (FAST) Library which provides equivalent functionality to the algorithms in the Standard Template Library (STL) [3], but are tailored specifically for fixed size (and high-performance) operations.

This is a preview of subscription content, log in via an institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

References

  1. J. Bilmes, K. Asanovic, J. Demmel, D. Lam, and C.-W. Chin. Optimizing matrix multiply using PHiPAC: A portable, high-performance, ANSI C coding methodology. Technical Report CS-96-326, University of Tennessee, May 1996. Also available as LAPACK working note 111.

    Google Scholar 

  2. Kuck and Associates. Kuck and Associates C++ User’s Guide.

    Google Scholar 

  3. Meng Lee and Alexander Stepanov. The standard template library. Technical report, HP Laboratories, February 1995.

    Google Scholar 

  4. Jack J. Dongarra R. Clint Whaley. Automatically tuned linear algebra software (atlas). Technical report, University of Tennessee and Oak Ridge National Laboratory, 1997.

    Google Scholar 

  5. Jeremy G. Siek and Andrew Lumsdaine. The matrix template library: A unifying framework for numerical linear algebra. In Parallel Object Oriented Scientific Computing. ECOOP, 1998.

    Google Scholar 

  6. Todd Veldhuizen. Using C++ template metaprograms. C++ Report, May 1995.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 1998 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Siek, J.G., Lumsdaine, A. (1998). A Rational Approach to Portable High Performance: The Basic Linear Algebra Instruction Set (BLAIS) and the Fixed Algorithm Size Template (FAST) Library. In: Demeyer, S., Bosch, J. (eds) Object-Oriented Technology: ECOOP’98 Workshop Reader. ECOOP 1998. Lecture Notes in Computer Science, vol 1543. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-49255-0_153

Download citation

  • DOI: https://doi.org/10.1007/3-540-49255-0_153

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-65460-5

  • Online ISBN: 978-3-540-49255-9

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics