BLAS1_S
Basic Linear Algebra Subprograms
Level 1
Single Precision Real Arithmetic
BLAS1_S is a library of C routines, using single precision
real arithmetic, 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
See the example test code.
Related Data and Programs:
BLAS1_C
is the single precision complex arithmetic version of BLAS1.
BLAS1_D
is the double precision real arithmetic version of BLAS1.
BLAS1_S is also available in
a FORTRAN77 version and
a FORTRAN90 version and
a MATLAB version.
BLAS1_Z
is the double precision complex arithmetic version of BLAS1.
BLAS2
is the Level 2 BLAS, for matrix-vector operations.
BLAS3
is the Level 3 BLAS, for matrix-matrix operations.
GSL
is the Gnu Scientific Library which includes an implementation
of the BLAS1 routines.
LAPACK
is a FORTRAN90 library of linear algebra routines
that uses BLAS1 routines
LINPACK
is a C++ linear algebra library that uses the BLAS1 routines
SUPER_BLAS
is a C library of routines which
is a version of some of the BLAS1 routines.
Reference:
-
Jack Dongarra, Cleve Moler, Jim Bunch, Pete Stewart,
LINPACK User's Guide,
SIAM, 1979.
-
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.
-
Thomas Coleman, Charles Van Loan,
Handbook for Matrix Computations,
Society for Industrial and Applied Mathematics,
3600 University City Science Center,
Philadelphia, PA 19104-2688.
-
Compaq Computer Corporation,
Compaq Extended Math Library,
CXML Reference Guide
Source Code:
-
blas1_s.c,
the level 1 BLAS in single precision real arithmetic.
-
blas1_s.h,
an include file for BLAS1_S.
-
blas1_s.csh
commands to compile the BLAS1_S.
Examples and Tests:
List of Routines:
-
I4_MAX returns the maximum of two integers.
-
I4_MIN returns the smaller of two integers.
-
ISAMAX finds the index of the float vector element of maximum absolute value.
-
LSAME returns TRUE if CA is the same letter as CB regardless of case.
-
R4_ABS returns the absolute value of a float.
-
R4_MAX returns the maximum of two floats.
-
R4_SIGN returns the sign of a float.
-
SASUM takes the sum of the absolute values of a float vector.
-
SAXPY computes float constant times a vector plus a vector.
-
SCOPY copies a float vector X to a vector Y.
-
SDOT forms the dot product of two float vectors.
-
SMACH computes machine parameters of float arithmetic.
-
SNRM2 returns the euclidean norm of a float vector.
-
SROT applies a float plane rotation.
-
SROTG constructs a float Givens plane rotation.
-
SSCAL scales a float vector by a constant.
-
SSWAP interchanges two float vectors.
-
XERBLA is an error handler for the LAPACK routines.
You can go up one level to
the C source codes.
Last revised on 29 March 2007.