BLAS
From HP-SEE Wiki
Line 3: | Line 3: | ||
* Described version: Tuesday Apr 19th 2011 (not versioned in the usual way) | * Described version: Tuesday Apr 19th 2011 (not versioned in the usual way) | ||
* Licensing: Free, http://www.netlib.org/blas/faq.html#2 | * Licensing: Free, http://www.netlib.org/blas/faq.html#2 | ||
- | * User documentation: | + | * User documentation: http://www.netlib.org/blas/blast-forum/ |
* Download: http://www.netlib.org/blas/archives/ | * Download: http://www.netlib.org/blas/archives/ | ||
- | * Source code: [http://www.netlib.org/blas/ | + | * Source code: [http://www.netlib.org/blas/blas.tgz Fortran 77], [http://www.netlib.org/blas/blast-forum/cblas.tgz C] |
== Authors/Maintainers == | == Authors/Maintainers == | ||
- | * | + | * Jack Dongarra and collaborators at the University of Tennessee at Knoxville, supported by the US National Science Foundation under Grant No. ASC-9313958 and US Department of Energy Grant No. DE-FG03-94ER25219. |
== Summary == | == Summary == | ||
The BLAS (Basic Linear Algebra Subprograms) are routines that provide standard | The BLAS (Basic Linear Algebra Subprograms) are routines that provide standard | ||
- | building blocks for performing basic vector and matrix operations. The Level 1 BLAS | + | building blocks for performing basic vector and matrix operations. The Level 1 BLAS routines |
perform scalar, vector and vector-vector operations, the Level 2 BLAS perform matrix- | perform scalar, vector and vector-vector operations, the Level 2 BLAS perform matrix- | ||
vector operations, and the Level 3 BLAS perform matrix-matrix operations. Because the | vector operations, and the Level 3 BLAS perform matrix-matrix operations. Because the | ||
Line 25: | Line 25: | ||
== Features == | == Features == | ||
- | * | + | * Level 1 BLAS performs scalar, vector and vector-vector operations |
+ | * Level 2 BLAS performs matrix-vector operations | ||
+ | * Level 3 BLAS performs matrix-matrix operations | ||
+ | * Supports both Fortran and C interface | ||
== Architectural/Functional Overview == | == Architectural/Functional Overview == | ||
- | * | + | * [http://www.netlib.org/blas/blasqr.pdf BLAS quick reference guide] |
+ | * [http://www.netlib.org/blas/blas2-paper.ps Details on the level 2 BLAS] | ||
+ | * [http://www.netlib.org/blas/blas3-paper.ps Details on the level 3 BLAS] | ||
== Usage Overview == | == Usage Overview == | ||
Line 34: | Line 39: | ||
== Dependencies == | == Dependencies == | ||
- | * | + | * None. |
== HP-SEE Applications == | == HP-SEE Applications == | ||
Line 53: | Line 58: | ||
== Usage by other projects and communities == | == Usage by other projects and communities == | ||
- | * | + | * This library is by far the most basic and most used numerical library, and is used extensively by many communities. |
== Recommendations for Configuration and Usage == | == Recommendations for Configuration and Usage == | ||
- | + | * BLAS does not have many configurable options, and is basically used as an input to produce optimized and more specialized numerical libraries, such as LAPACK, ScaLAPACK, ATLAS. | |
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + |
Latest revision as of 16:50, 5 August 2011
Contents |
Information
- Web site: http://www.netlib.org/blas/
- Described version: Tuesday Apr 19th 2011 (not versioned in the usual way)
- Licensing: Free, http://www.netlib.org/blas/faq.html#2
- User documentation: http://www.netlib.org/blas/blast-forum/
- Download: http://www.netlib.org/blas/archives/
- Source code: Fortran 77, C
Authors/Maintainers
- Jack Dongarra and collaborators at the University of Tennessee at Knoxville, supported by the US National Science Foundation under Grant No. ASC-9313958 and US Department of Energy Grant No. DE-FG03-94ER25219.
Summary
The BLAS (Basic Linear Algebra Subprograms) are routines that provide standard building blocks for performing basic vector and matrix operations. The Level 1 BLAS routines perform scalar, vector and vector-vector operations, the Level 2 BLAS perform matrix- vector operations, and the Level 3 BLAS perform matrix-matrix operations. Because the BLAS are efficient, portable, and widely available, they are commonly used in the development of high quality linear algebra software, LAPACK for example. Machine-specific optimized BLAS libraries are available for a variety of computer architectures. These optimized BLAS libraries are provided by the computer vendor or by an independent software vendor. There is a Fortran77 reference implementation too which is not optimized. The BLAS source code was contributed by many before FOSS licenses were established; there are both free and commercial versions/implementations available.
Features
- Level 1 BLAS performs scalar, vector and vector-vector operations
- Level 2 BLAS performs matrix-vector operations
- Level 3 BLAS performs matrix-matrix operations
- Supports both Fortran and C interface
Architectural/Functional Overview
Usage Overview
- C interface
Dependencies
- None.
HP-SEE Applications
- HMLQCD (Hadron Masses from Lattice QCD)
- NUQG (Numerical study of ultra-cold quantum gases)
- GENETATOMIC (Genetic algorithms in atomic collisions)
- PCACIC (Principal component analysis of the conformational interconversions in large-ring cyclodextrins)
Resource Centers
- BG, BG
- HPCG, BG
- IFIN_BC, RO
- IFIN_Bio, RO
- InfraGRID, RO
- NCIT-Cluster, RO
- NIIFI SC, HU
- PARADOX, RS
Usage by other projects and communities
- This library is by far the most basic and most used numerical library, and is used extensively by many communities.
Recommendations for Configuration and Usage
- BLAS does not have many configurable options, and is basically used as an input to produce optimized and more specialized numerical libraries, such as LAPACK, ScaLAPACK, ATLAS.