Proposed Consistent Exception Handling for the BLAS and LAPACK
DescriptionNumerical exceptions, which may be caused by operations like sqrt(-1) or convergence failures, are often unavoidable, in particular when software is used on unforeseen inputs. As more aspects of society become automated (self-driving cars, and cyber-physical systems more generally), it becomes increasingly important to design software that is resilient to exceptions, and responds to them consistently. Consistency is needed to build higher-level resilient and consistent software. We explore the design space of consistent exception handling for the BLAS and LAPACK, pointing out many current examples of inconsistent exception handling, and propose a new design balancing consistency, complexity, ease of use, and performance. Some compromises are needed, because of preexisting inconsistencies, including in vendor BLAS implementations, different programming languages, and compilers. 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.
TimeFriday, 18 November 20228:40am - 9am CST