A Step-Function Abstract Domain for Granular Floating-Point Error Analysis
The pitfalls of numerical computations using floating-point numbers are well known. Existing static techniques for float- ing-point error analysis provide a single upper bound across all potential values for a floating-point variable. We present a new abstract domain for floating-point error analysis which describes error as a function of each variable’s value. This domain accurately models the nature of floating-point error as dependent on the magnitude of its operands. We use this domain to effectively handle exceptional values (e.g., NaN), branch instability, and binade boundaries. The granular anal- ysis provides users with a detailed understanding of forward error. We implement the abstract domain in a tool that sup- ports analyzing a subset of C including conditionals, arrays, and arithmetic operators. We compare our implementation with Fluctuat and show how our analysis can improve the error bounds for subranges of possible outputs.
Authors
- Samuel Pollard (ORCID: https://orcid.org/0000-0002-3275-4064)
- Anthony Dario
Institutions
- University of Oregon (US)
- Sandia National Laboratories California (US)
Publication Details
- Published
- 2024-10-17
- DOI
- https://doi.org/10.1145/3689609.3689997
- Primary Topic
- Fluid Dynamics Simulations and Interactions
- Type
- article
- Field-Weighted Citation Impact
- 0.00
Funders
- U.S. Department of Energy
- National Nuclear Security Administration
- Sandia National Laboratories