Demystifying Floating Point
summary
Explains how IEEE floats are stored (sign/exponent/mantissa), demonstrates epsilon and relative error (pi shows ~2.8e-8 relative error), and details guard/round/sticky bits and rounding modes. Shows unstable algorithms: naive time-accumulation by adding small deltas drifts into tenths of a second over minutes, while a fixed-frame counter or integer ticks (fixed‑point) keeps correct time. Uses Google Test and code on GitHub, recommends compiler warnings, FP exceptions, FMA/SSE where available, and preferring stable algorithms or doubles for precision.
AI-written summary · about
chapters (13)
- 0:00Introduction to floating point
- 2:52Floating point standards
- 6:23Floating point representation
- 10:44Precision and significant digits
- 14:07Floating point errors
- 16:42Rounding and rounding modes
- 21:16Stable algorithms for precision
- 24:31Floating point in simulations
- 30:32Mathematical identities and compiler assumptions
- 32:21Floating point exceptions
- 33:47Compiler warnings and optimizations
- 35:35Floating point tricks and testing
- 37:19Q&A session
related talks
50mElevating Precision in C++ - A Journey Below the Surface of Floating-Point
27mWhy the float did it NaN?
17mFloating-Point TVPI Abstract Domain
17mMiniFloat-NN: A RISC-V ISA Extension for Low-Precision NN Training
26mExploring HiFloat8: A Tapered Format Complementing the FP8 Ecosystem for Robust Model T...
51mPaths to New Numeric Types On the Java Platform
11mExploiting Verified Neural Networks via Floating Point Numerical Error
35mSecure Numerical Computing is Hard: Lessons from 10 Years of Open Data Science & the Long Road Ahead
