Proposed Consistent Exception Handling for the BLAS and LAPACK

James Demmel, Jack Dongarra, Mark Gates, Greg Henry, Julien Langou, Xiaoye Li, Piotr Luszczek, Weslley Pereira, Jason Riedy, Cindy Rubio-Gonzalez

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

2 Scopus citations

Abstract

Numerical exceptions, which may be caused by overflow, operations like division by 0 or sqrt(-1), or conver-gence failures, are unavoidable in many cases, in particular when software is used on unforeseen and difficult inputs. As more aspects of society become automated e.g., self-driving cars, health monitors, and cyber-physical systems more generally, it is becoming increasingly important to design software that is resilient to exceptions, and that responds to them in a consistent way. Consistency is needed to allow users to build higher-level software that is also resilient and consistent (and so on recursively). In this paper we explore the design space of consistent exception handling for the widely used BLAS and LAPACK linear algebra libraries, pointing out a variety of instances of inconsistent exception handling in the current versions, and propose a new design that balances consistency, complexity, ease of use, and performance. Some compromises are needed, because there are preexisting inconsistencies that are outside our control, including in or between existing vendor BLAS implementations, different programming languages, and even compilers for the same programming language. And user requests from our surveys are quite diverse. We also propose our design as a possible model for other numerical software, and welcome comments on our design choices.

Original languageEnglish
Title of host publicationProceedings of Correctness 2022
Subtitle of host publication6th International Workshop on Software Correctness for HPC Applications, Held in conjunction with SC 2022: The International Conference for High Performance Computing, Networking, Storage and Analysis
PublisherInstitute of Electrical and Electronics Engineers Inc.
Pages1-9
Number of pages9
ISBN (Electronic)9781665463355
DOIs
StatePublished - 2022
Externally publishedYes
Event6th IEEE/ACM International Workshop on Software Correctness for HPC Applications, Correctness 2022 - Dallas, United States
Duration: Nov 13 2022Nov 18 2022

Publication series

NameProceedings of Correctness 2022: 6th International Workshop on Software Correctness for HPC Applications, Held in conjunction with SC 2022: The International Conference for High Performance Computing, Networking, Storage and Analysis

Conference

Conference6th IEEE/ACM International Workshop on Software Correctness for HPC Applications, Correctness 2022
Country/TerritoryUnited States
CityDallas
Period11/13/2211/18/22

Funding

ACKNOWLEDGEMENTS This work was supported in part by the National Science Foundation under the project Basic ALgebra LIbraries for Sustainable Technology with Interdisciplinary Collaboration (BALLISTIC), Grant Nos. 2004763 (UC Berkeley), 2004541 (U. Tennessee) and 2004850 (U Colorado Denver), National Science Foundation Grant No. 1750983, and U.S. Department of Energy, Office of Science, Advanced Scientific Computer Research, under Grant No. DE-SC0020286. MathWorks also provided support.

Keywords

  • BLAS
  • LAPACK
  • exception handling
  • numerical libraries

Fingerprint

Dive into the research topics of 'Proposed Consistent Exception Handling for the BLAS and LAPACK'. Together they form a unique fingerprint.

Cite this