Design, implementation and testing of extended and mixed precision BLAS
Top Cited Papers
- 1 June 2002
- journal article
- research article
- Published by Association for Computing Machinery (ACM) in ACM Transactions on Mathematical Software
- Vol. 28 (2) , 152-205
- https://doi.org/10.1145/567806.567808
Abstract
This article describes the design rationale, a C implementation, and conformance testing of a subset of the new Standard for the BLAS (Basic Linear Algebra Subroutines): Extended and Mixed Precision BLAS. Permitting higher internal precision and mixed input/output types and precisions allows us to implement some algorithms that are simpler, more accurate, and sometimes faster than possible without these features. The new BLAS are challenging to implement and test because there are many more subroutines than in the existing Standard, and because we must be able to assess whether a higher precision is used for internal computations than is used for either input or output variables. We have therefore developed an automated process of generating and systematically testing these routines. Our methodology is applicable to languages besides C. In particular, our algorithms used in the testing code will be valuable to all other BLAS implementors. Our extra precision routines achieve excellent performance---close to half of the machine peak Megaflop rate even for the Level 2 BLAS, when the data access is stride one.Keywords
This publication has 23 references indexed in Scilit:
- Fernando's Solution to Wilkinson's Problem: An Application of Double FactorizationLinear Algebra and its Applications, 1997
- A Fortran 90-based multiprecision systemACM Transactions on Mathematical Software, 1995
- Faster numerical algorithms via exception handlingIEEE Transactions on Computers, 1994
- A set of level 3 basic linear algebra subprogramsACM Transactions on Mathematical Software, 1990
- An extended set of FORTRAN basic linear algebra subprogramsACM Transactions on Mathematical Software, 1988
- Basic Linear Algebra Subprograms for Fortran UsageACM Transactions on Mathematical Software, 1979
- A Fortran Multiple-Precision Arithmetic PackageACM Transactions on Mathematical Software, 1978
- A floating-point technique for extending the available precisionNumerische Mathematik, 1971
- Quasi double-precision in floating point additionBIT Numerical Mathematics, 1965
- Compatibility of approximate solution of linear equations with given error bounds for coefficients and right-hand sidesNumerische Mathematik, 1964