Compiler-Assisted Floating-Point Error Analysis and Profiling with FPChecker

Compiler-Assisted Floating-Point Error Analysis and Profiling with FPChecker

Monday, June 22, 2026 9:00 AM to 1:00 PM · 4 hr. (Europe/Berlin)
Hall X12 - 1st Floor
Tutorial
Compiler and Tools for Parallel ProgrammingMixed Precision

Information

Floating-point arithmetic is essential in scientific computing, but it often introduces subtle errors and unexpected behavior in numerical software. As the demand grows to port code to lower floating-point precision for performance and energy benefits, developers need effective tools to analyze and understand floating-point error accumulation and propagation within their applications. This tutorial introduces compiler-assisted tools built on the FPChecker framework (https://fpchecker.org/), leveraging clang/LLVM to instrument C/C++ code and provide insights into floating-point behavior. Participants will learn to assess the dynamic range and precision needs of their applications, analyze and visualize how rounding errors and relative errors propagate through different code regions, and detect issues such as infinities or NaNs caused by numerical limitations. The tutorial features hands-on demonstrations with accessible examples—including simple linear solvers, finite difference methods, and C/C++ numerical codes, designed to run on participants’ laptops. In the advanced session (second part of the tutorial), attendees can apply the tools to their own applications or to widely used numerical libraries, gaining practical experience with compiler-based floating-point analysis in real-world software. All tools and examples will be distributed via Conda environments for easy installation, and pre-configured Amazon AWS instances will be available for participants unable to use Conda.
Format
on-site
Targeted Audience
This tutorial is intended for scientific computing developers and researchers who wish to profile and analyze the floating-point behavior of their numerical applications. The techniques and insights provided will help participants identify regions of code where lower precision can be safely used without significantly affecting the accuracy of results.
Beginner Level
50%
Intermediate Level
50%
Prerequesites
Attendees should have experience compiling C/C++ code and a basic understanding of running numerical applications and libraries. The concepts about floating-point rounding error will be introduced in the tutorial.