A Set of Level 3 Basic Linear Algebra Subprograms

A Set of Level 3 Basic Linear Algebra Subprograms

March 1990 | JACK J. DONGARRA, JEREMY DU CROZ and SVEN HAMMARLING and IAIN DUFF
This paper introduces Level 3 Basic Linear Algebra Subprograms (BLAS), designed for matrix-matrix operations to improve efficiency and portability on high-performance computers, especially those with hierarchical memory and parallel processing capabilities. The Level 3 BLAS are an extension of the Level 2 BLAS, which were aimed at matrix-vector operations. The Level 3 BLAS provide operations of order O(n^3), making them more efficient for large-scale computations. They are intended for software developers and are not comprehensive but serve as building blocks for numerical linear algebra algorithms. The Level 3 BLAS include operations such as matrix-matrix products, rank-k and rank-2k updates of symmetric and Hermitian matrices, and solving triangular systems of equations. These operations are defined with specific argument conventions, including matrix dimensions, input-output matrices, and scalar parameters. The routines are designed to be consistent with the Level 2 BLAS, ensuring ease of use and portability. The paper also discusses the naming conventions for the Level 3 BLAS, which follow the same structure as the Level 2 BLAS, with the first character indicating the data type (S for real, D for double precision, C for complex, and Z for complex*16). The routines are written in Fortran 77 and can be adapted to other programming languages. The Level 3 BLAS are used in algorithms that require efficient matrix operations, such as Cholesky factorization. The paper provides an example of how the Level 3 BLAS can be used to implement a Cholesky factorization algorithm, demonstrating their effectiveness in reducing data movement and improving performance on high-performance computers. The paper also discusses the rationale behind the design of the Level 3 BLAS, emphasizing the need for numerical stability and efficiency. The routines are intended to be used as building blocks for higher-level algorithms in numerical linear algebra.This paper introduces Level 3 Basic Linear Algebra Subprograms (BLAS), designed for matrix-matrix operations to improve efficiency and portability on high-performance computers, especially those with hierarchical memory and parallel processing capabilities. The Level 3 BLAS are an extension of the Level 2 BLAS, which were aimed at matrix-vector operations. The Level 3 BLAS provide operations of order O(n^3), making them more efficient for large-scale computations. They are intended for software developers and are not comprehensive but serve as building blocks for numerical linear algebra algorithms. The Level 3 BLAS include operations such as matrix-matrix products, rank-k and rank-2k updates of symmetric and Hermitian matrices, and solving triangular systems of equations. These operations are defined with specific argument conventions, including matrix dimensions, input-output matrices, and scalar parameters. The routines are designed to be consistent with the Level 2 BLAS, ensuring ease of use and portability. The paper also discusses the naming conventions for the Level 3 BLAS, which follow the same structure as the Level 2 BLAS, with the first character indicating the data type (S for real, D for double precision, C for complex, and Z for complex*16). The routines are written in Fortran 77 and can be adapted to other programming languages. The Level 3 BLAS are used in algorithms that require efficient matrix operations, such as Cholesky factorization. The paper provides an example of how the Level 3 BLAS can be used to implement a Cholesky factorization algorithm, demonstrating their effectiveness in reducing data movement and improving performance on high-performance computers. The paper also discusses the rationale behind the design of the Level 3 BLAS, emphasizing the need for numerical stability and efficiency. The routines are intended to be used as building blocks for higher-level algorithms in numerical linear algebra.
Reach us at info@study.space
[slides] A set of level 3 basic linear algebra subprograms | StudySpace