Detecting Floating-Point Expression Errors Based Improved PSO Algorithm

被引:0
|
作者
Yang, Hongru [1 ]
Xu, Jinchen [1 ]
Hao, Jiangwei [1 ]
Zhang, Zuoyan [1 ]
Zhou, Bei [1 ]
机构
[1] Informat Engn Univ, 62 Sci Ave, Zhengzhou 450001, Henan, Peoples R China
关键词
OPTIMIZATION; ACCURACY;
D O I
10.1049/2023/6681267
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
The use of floating-point numbers inevitably leads to inaccurate results and, in certain cases, significant program failures. Detecting floating-point errors is critical to ensuring that floating-point programs outputs are proper. However, due to the sparsity of floating-point errors, only a limited number of inputs can cause significant floating-point errors, and determining how to detect these inputs and to selecting the appropriate search technique is critical to detecting significant errors. This paper proposes characteristic particle swarm optimization (CPSO) algorithm based on particle swarm optimization (PSO) algorithm. The floating-point expression error detection tool PSOED is implemented, which can detect significant errors in floating-point arithmetic expressions and provide corresponding input. The method presented in this paper is based on two insights: (1) treating floating-point error detection as a search problem and selecting reliable heuristic search strategies to solve the problem; (2) fully utilizing the error distribution laws of expressions and the distribution characteristics of floating-point numbers to guide the search space generation and improve the search efficiency. This paper selects 28 expressions from the FPBench standard set as test cases, uses PSOED to detect the maximum error of the expressions, and compares them to the current dynamic error detection tools S3FP and Herbie. PSOED detects the maximum error 100% better than S3FP, 68% better than Herbie, and 14% equivalent to Herbie. The results of the experiments indicate that PSOED can detect significant floating-point expression errors.
引用
收藏
页数:16
相关论文
共 50 条
  • [31] Efficient Automated Repair of High Floating-Point Errors in Numerical Libraries
    Yi, Xin
    Chen, Liqian
    Mao, Xiaoguang
    Ji, Tao
    PROCEEDINGS OF THE ACM ON PROGRAMMING LANGUAGES-PACMPL, 2019, 3
  • [32] Extension of floating-point filters to absolute and relative errors for numerical computation
    Ohta, Yuki
    Ozaki, Katsuhisa
    INTERNATIONAL CONFERENCE ON MATHEMATICS: PURE, APPLIED AND COMPUTATION, 2019, 1218
  • [33] PROBABILITY ANALYSIS OF ROUND-OFF ERRORS IN FLOATING-POINT ARITHMETIC
    LYASHENKO, NN
    NIKULIN, MS
    THEORY OF PROBABILITY AND ITS APPLICATIONS, 1990, 35 (01) : 66 - 74
  • [34] Floating-point parallel compression based on GPGPU
    Wang, Pengjie
    Yang, Xin
    Liu, Zichao
    Li, Wei
    Li, Houjie
    Yu, Chengxue
    Journal of Information and Computational Science, 2015, 12 (04): : 1399 - 1406
  • [35] Improved Architectures for a Floating-Point Fused Dot Product Unit
    Sohn, Jongwook
    Swartzlander, Earl E., Jr.
    2013 21ST IEEE SYMPOSIUM ON COMPUTER ARITHMETIC (ARITH), 2013, : 41 - 48
  • [36] Floating-point data acquisition system with improved noise immunity
    Groza, V
    IMTC/O3: PROCEEDINGS OF THE 20TH IEEE INSTRUMENTATION AND MEASUREMENT TECHNOLOGY CONFERENCE, VOLS 1 AND 2, 2003, : 1454 - 1458
  • [37] IMPROVED ERROR BOUNDS FOR INNER PRODUCTS IN FLOATING-POINT ARITHMETIC
    Jeannerod, Claude-Pierre
    Rump, Siegfried M.
    SIAM JOURNAL ON MATRIX ANALYSIS AND APPLICATIONS, 2013, 34 (02) : 338 - 344
  • [38] A floating-point genetic algorithm for solving the unit commitment problem
    Dang, Chuangyin
    Li, Minqiang
    EUROPEAN JOURNAL OF OPERATIONAL RESEARCH, 2007, 181 (03) : 1370 - 1395
  • [39] Improving FDTD Algorithm Performance using Block Floating-Point
    Pijetlovic, Stefan
    Subotic, Milos
    Pjevalica, Nebojsa
    2017 25TH TELECOMMUNICATION FORUM (TELFOR), 2017, : 518 - 521
  • [40] A new error-free floating-point summation algorithm
    Pan, V. Y.
    Murphy, B.
    Qian, G.
    Rosholt, R. E.
    COMPUTERS & MATHEMATICS WITH APPLICATIONS, 2009, 57 (04) : 560 - 564