Efficient generation of error-inducing floating-point inputs via symbolic execution
Hui Guo, Cindy Rubio-González
摘要
Floating point is widely used in software to emulate arithmetic over reals. Unfortunately, floating point leads to rounding errors that propagate and accumulate during execution. Generating inputs to maximize the numerical error is critical when evaluating the accuracy of floating-point code. In this paper, we formulate the problem of generating high error-inducing floating-point inputs as a code coverage maximization problem solved using symbolic execution. Specifically, we define inaccuracy checks to detect large precision loss and cancellation. We inject these checks at strategic program locations to construct specialized branches that, when covered by a given input, are likely to lead to large errors in the result. We apply symbolic execution to generate inputs that exercise these specialized branches, and describe optimizations that make our approach practical. We implement a tool named FPGen and present an evaluation on 21 numerical programs including matrix computation and statistics libraries. We show that FPGen exposes errors for 20 of these programs and triggers errors that are, on average, over 2 orders of magnitude larger than the state of the art.
问问这篇 Paper
智能体会读完全文。
Lune 把这篇 Paper 索引到了最后一个公式,引用它的顶会 Paper 也一样。你提问,回答直接引用原文。
引用它的顶会 Paper9
- Predoo: precision testing of deep learning operatorsXufan Zhang, Ning Sun, Chunrong Fang, Jiawei Liu 等ISSTA 2021 · 被引用 52 次
- Parallel shadow execution to accelerate the debugging of numerical errorsSangeeta Chowdhary, Santosh NagarakatteFSE 2021 · 被引用 21 次
- HeteroFuzz: fuzz testing to detect platform dependent divergence for heterogeneous applicationsQian Zhang, Jiyuan Wang, Miryung KimFSE 2021 · 被引用 16 次
- pLiner: isolating lines of floating-point code for compiler-induced variabilityHui Guo, Ignacio Laguna, Cindy Rubio-GonzálezSC 2020 · 被引用 15 次
- Finding Inputs that Trigger Floating-Point Exceptions in GPUs via Bayesian OptimizationIgnacio Laguna, Ganesh GopalakrishnanSC 2022 · 被引用 10 次
相关 Paper
- FPCC: Detecting Floating-Point Errors via Chain ConditionsXin Yi, Hengbiao Yu, Liqian Chen, Xiaoguang Mao 等OOPSLA 2024 · 被引用 7 次
- Mathematically-Guided Detection of Floating-Point ErrorsYoushuai Tan, Zhanwei Zhang, Haonan Zhang, Lianyu Zheng 等ISSTA 2026
- FPBOXer: Efficient Input-Generation for Targeting Floating-Point Exceptions in GPU ProgramsAnh Tran, Ignacio Laguna, Ganesh GopalakrishnanHPDC 2024 · 被引用 3 次
- Design and Evaluation of GPU-FPX: A Low-Overhead tool for Floating-Point Exception Detection in NVIDIA GPUsXinyi Li, Ignacio Laguna, Bo Fang, Katarzyna Swirydowicz 等HPDC 2023 · 被引用 12 次
- Lightweight Concolic Testing via Path-Condition Synthesis for Deep Learning LibrariesSehoon Kim, Yonghyeon Kim, Dahyeon Park, Yuseok Jeon 等ICSE 2025 · 被引用 5 次
