Finding Root Causes of Floating Point Error

被引:0
|
作者
Sanchez-Stern, Alex [1 ]
Panchekha, Pavel [2 ]
Lerner, Sorin [1 ]
Tatlock, Zachary [2 ]
机构
[1] Univ Calif San Diego, La Jolla, CA USA
[2] Univ Washington, Seattle, WA USA
关键词
floating point; debugging; dynamic analysis;
D O I
暂无
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Floating-point arithmetic plays a central role in science, engineering, and finance by enabling developers to approximate real arithmetic. To address numerical issues in large floating-point applications, developers must identify root causes, which is difficult because floating-point errors are generally non-local, non-compositional, and non-uniform. This paper presents Herbgrind, a tool to help developers identify and address root causes in numerical code written in low-level languages like C/C++ and Fortran. Herbgrind dynamically tracks dependencies between operations and program outputs to avoid false positives and abstracts erroneous computations to simplified program fragments whose improvement can reduce output error. We perform several case studies applying Herbgrind to large, expert-crafted numerical programs and show that it scales to applications spanning hundreds of thousands of lines, correctly handling the low-level details of modern floating point hardware and mathematical libraries and tracking error across function boundaries and through the heap.
引用
下载
收藏
页码:256 / 269
页数:14
相关论文
共 50 条
  • [31] Floating Point Square Root under HUB Format
    Villalba-Moreno, Julio
    Hormigo, Javier
    2017 IEEE 35TH INTERNATIONAL CONFERENCE ON COMPUTER DESIGN (ICCD), 2017, : 447 - 454
  • [33] Finding Normal Binary Floating-Point Factors Efficiently
    Mak Andrlon
    Journal of Automated Reasoning, 2023, 67
  • [34] Efficient Floating-Point Square Root and Reciprocal Square Root Algorithms
    Moroz, Leonid
    Samotyy, Volodymyr
    Wegrzyn, Mariusz
    Dzelendzyak, Ulyana
    PROCEEDINGS OF THE THE 11TH IEEE INTERNATIONAL CONFERENCE ON INTELLIGENT DATA ACQUISITION AND ADVANCED COMPUTING SYSTEMS: TECHNOLOGY AND APPLICATIONS (IDAACS'2021), VOL 1, 2021, : 552 - 559
  • [35] FINDING SUSPECTED CAUSES OF MEASUREMENT ERROR IN MULTIVARIATE ENVIRONMENTAL DATA
    STAPANIAN, MA
    GARNER, FC
    FITZGERALD, KE
    FLATMAN, GT
    NOCERINO, JM
    JOURNAL OF CHEMOMETRICS, 1993, 7 (03) : 165 - 176
  • [36] Asymptotic error bounds for block floating point digital filters
    Ralev, K
    Bauer, P
    PROCEEDINGS OF THE 39TH MIDWEST SYMPOSIUM ON CIRCUITS AND SYSTEMS, VOLS I-III, 1996, : 1405 - 1408
  • [37] Biot-Savart routines with minimal floating point error
    Schilling, Jonathan
    Svensson, Jakob
    Hoefel, Udo
    Geiger, Joachim
    Thomsen, Henning
    COMPUTER PHYSICS COMMUNICATIONS, 2023, 287
  • [38] Error estimation of floating-point summation and dot product
    Rump, Siegfried M.
    BIT NUMERICAL MATHEMATICS, 2012, 52 (01) : 201 - 220
  • [39] ERROR BOUNDS ON COMPLEX FLOATING-POINT MULTIPLICATION WITH AN FMA
    Jeannerod, Claude-Pierre
    Kornerup, Peter
    Louvet, Nicolas
    Muller, Jean-Michel
    MATHEMATICS OF COMPUTATION, 2017, 86 (304) : 881 - 898
  • [40] On Sound Relative Error Bounds for Floating-Point Arithmetic
    Izycheva, Anastasiia
    Darulova, Eva
    PROCEEDINGS OF THE 17TH CONFERENCE ON FORMAL METHODS IN COMPUTER AIDED DESIGN (FMCAD 2017), 2017, : 15 - 22