BLAS1
Basic Linear Algebra Subprograms
Level 1


BLAS1 is a library of C routines which implement the Level 1 BLAS, or Basic Linear Algebra Subprograms.

The BLAS are a small core library of linear algebra utilities, which can be highly optimized for various architectures. Software that relies on the BLAS is thus highly portable, and will typically run very efficiently.

The Level 1 BLAS are primarily for use in vector operations. In certain cases, they may also be used to operate on the rows or columns of a two-dimensional array.

On the SGI, a precompiled optimized BLAS library may be linked to via a command like:

gcc myprog.c -lblas

On the Compaq ALPHA, a precompiled optimized BLAS library is available in CXML, the "Compaq Extended Math Library". A C program can link with the CXML library, but the CXML routine names must have an underscore appended to them. The linking command would be something like:

gcc myprog.c -lcxml

Copies of the BLAS1 library are made available in single or double precision using real or complex arithmetic. For more information, refer to:

Related Data and Programs:

BLAS1 is also available in a C++ version and a FORTRAN77 version and a FORTRAN90 version and a MATLAB version.

BLAS2 is a FORTRAN90 library which is the Level 2 BLAS, for matrix-vector operations.

BLAS3 is a FORTRAN90 library which is the Level 3 BLAS, for matrix-matrix operations.

ESSL is the IBM Engineering and Scientific Subroutine Library which includes an implementation of the BLAS1 routines.

GSL is the Gnu Scientific Library which includes an implementation of the BLAS1 routines.

LAPACK is a FORTRAN90 library which is a linear algebra package that uses BLAS1 routines

LINPACK is a C++ library which is a linear algebra library that uses the BLAS1 routines

NMS is a FORTRAN90 library which includes BLAS1.

PETSC is a scientific library for use in parallel computation which includes an implementation of the BLAS1 routines.

SLATEC is a FORTRAN90 library which includes BLAS1.

SUPER_BLAS is a C library which is a version of some of the BLAS1 routines.

Reference:

  1. Jack Dongarra, Cleve Moler, Jim Bunch, Pete Stewart,
    LINPACK User's Guide,
    SIAM, 1979.
  2. Charles Lawson, Richard Hanson, David Kincaid, Fred Krogh,
    Algorithm 539, Basic Linear Algebra Subprograms for Fortran Usage,
    ACM Transactions on Mathematical Software,
    Volume 5, Number 3, September 1979, pages 308-323.
  3. Thomas Coleman, Charles Van Loan,
    Handbook for Matrix Computations,
    Society for Industrial and Applied Mathematics,
    3600 University City Science Center,
    Philadelphia, PA 19104-2688.
  4. Compaq Computer Corporation,
    Compaq Extended Math Library,
    CXML Reference Guide

You can go up one level to the C source codes.


Last revised on 29 March 2007.