FPCC: Detecting Floating-Point Errors via Chain Conditions

被引:0
|
作者
Yi, Xin [1 ]
Yu, Hengbiao [1 ]
Chen, Liqian [2 ]
Mao, Xiaoguang [2 ]
Wang, Ji [2 ]
机构
[1] Natl Univ Def Technol, Coll Comp, Changsha, Peoples R China
[2] Natl Univ Def Technol, Coll Comp, State Key Lab Complex & Crit Software Environm, Changsha, Peoples R China
来源
基金
国家重点研发计划; 中国国家自然科学基金;
关键词
chain condition; floating-point error; error-triggering input; accuracy;
D O I
10.1145/3689764
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Floating-point arithmetic is notorious for its rounding errors, which can propagate and accumulate, leading to unacceptable results. Detecting inputs that can trigger significant floating-point errors is crucial for enhancing the reliability of numerical programs. Existing methods for generating error-triggering inputs often rely on costly shadow executions that involve high-precision computations or suffer from false positives. This paper introduces chain conditions to capture the propagation and accumulation of floating-point errors, using them to guide the search for error-triggering inputs. We have implemented a tool named FPCC and evaluated it on 88 functions from the GNU Scientific Library, as well as 21 functions with multiple inputs from previous research. The experimental results demonstrate the effectiveness and efficiency of our approach: (1) FPCC achieves 100% accuracy in detecting significant errors for the reported rank-1 inputs, while 72.69% rank-1 inputs from the state-of-the-art tool ATOMU can trigger significant errors. Overall, 99.64% (1049/1053) of the inputs reported by FPCC can trigger significant errors, whereas only 19.45% (141/723) of the inputs reported by ATOMU can trigger significant errors; (2) FPCC exhibits a 2.17x speedup over ATOMU in detecting significant errors; (3) FPCC also excels in supporting functions with multiple inputs, outperforming the state-of-the-art technique. To facilitate further research in the community, we have made FPCC available on GitHub at https://github.com/DataReportRe/FPCC.
引用
收藏
页数:28
相关论文
共 50 条
  • [11] USING SIMULATION TO CALCULATE FLOATING-POINT QUANTIZATION ERRORS
    PHILLIPS, CL
    SIMULATION, 1980, 34 (06) : 207 - 214
  • [12] FPChecker: Detecting Floating-Point Exceptions in GPU Applications
    Laguna, Ignacio
    34TH IEEE/ACM INTERNATIONAL CONFERENCE ON AUTOMATED SOFTWARE ENGINEERING (ASE 2019), 2019, : 1126 - 1129
  • [13] A Genetic Algorithm for Detecting Significant Floating-Point Inaccuracies
    Zou, Daming
    Wang, Ran
    Xiong, Yingfei
    Zhang, Lu
    Su, Zhendong
    Mei, Hong
    2015 IEEE/ACM 37TH IEEE INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING, VOL 1, 2015, : 529 - 539
  • [14] EIFFEL: Inferring Input Ranges of Significant Floating-point Errors via Polynomial Extrapolation
    Zhang, Zuoyan
    Zhou, Bei
    Hao, Jiangwei
    Yang, Hongru
    Cui, Mengqi
    Zhou, Yuchang
    Song, Guanghui
    Li, Fei
    Xu, Jinchen
    Zhao, Jie
    2023 38TH IEEE/ACM INTERNATIONAL CONFERENCE ON AUTOMATED SOFTWARE ENGINEERING, ASE, 2023, : 1441 - 1453
  • [15] ADDER ERRORS VERSUS MULTIPLIER ERRORS IN FLOATING-POINT DIGITAL-FILTERS
    MARTINELLI, G
    ORLANDI, G
    SALERNO, M
    PROCEEDINGS OF THE INSTITUTION OF ELECTRICAL ENGINEERS-LONDON, 1976, 123 (03): : 207 - 211
  • [16] ON RELATIVE ERRORS OF FLOATING-POINT OPERATIONS: OPTIMAL BOUNDS AND APPLICATIONS
    Jeannerod, Claude-Pierre
    Rump, Siegfried M.
    MATHEMATICS OF COMPUTATION, 2018, 87 (310) : 803 - 819
  • [17] Automatic Estimation of Verified Floating-Point Round-Off Errors via Static Analysis
    Moscato, Mariano
    Titolo, Laura
    Dutle, Aaron
    Munoz, Cesar A.
    COMPUTER SAFETY, RELIABILITY, AND SECURITY, SAFECOMP 2017, 2017, 10488 : 213 - 229
  • [18] A note of techniques that mitigate floating-point errors in PIN estimation
    Wen-Chyan, Ke
    Chen Hueiling
    William, Lin Hsiou-Wei
    FINANCE RESEARCH LETTERS, 2019, 31 : 458 - 462
  • [19] Efficient Search for Inputs Causing High Floating-point Errors
    Chiang, Wei-Fan
    Gopalakrishnan, Ganesh
    Rakamaric, Zvonimir
    Solovyev, Alexey
    ACM SIGPLAN NOTICES, 2014, 49 (08) : 43 - 52
  • [20] Floating-point to fixed-point conversion with decision errors due to quantization
    Shi, CC
    Brodersen, RW
    2004 IEEE INTERNATIONAL CONFERENCE ON ACOUSTICS, SPEECH, AND SIGNAL PROCESSING, VOL V, PROCEEDINGS: DESIGN AND IMPLEMENTATION OF SIGNAL PROCESSING SYSTEMS INDUSTRY TECHNOLOGY TRACKS MACHINE LEARNING FOR SIGNAL PROCESSING MULTIMEDIA SIGNAL PROCESSING SIGNAL PROCESSING FOR EDUCATION, 2004, : 41 - 44