Correctly Rounded Math Libraries without Worrying about the Application’s Rounding Mode
This program is tentative and subject to change.
Our RLibm project has recently proposed methods to generate a single implementation for an elementary
function that produces correctly rounded results for multiple rounding modes and representations with
up to 32-bits. They are appealing for developing fast reference libraries without double rounding issues. The key insight is to build polynomial approximations that produce the correctly rounded result for a representation with two additional bits when compared to the largest target representation and with the "non-standard" round-to-odd rounding mode, which makes double rounding the RLibm math library result to any smaller target representation innocuous. The resulting approximations generated by the RLibm approach are implemented with machine supported floating-point operations with the round-to-nearest rounding mode. When an application uses a rounding mode other than the round-to-nearest mode, the RLibm math library saves the application's rounding mode, changes the system's rounding mode to round-to-nearest, computes the correctly rounded result, and restores the application’s rounding mode. This frequent change of rounding modes has a performance cost.
This paper proposes two new methods, which we call rounding-invariant outputs and rounding-invariant
input bounds, to avoid the frequent changes to the rounding mode and the dependence on the round-to-nearest mode. First, our new rounding-invariant outputs method proposes using the round-to-zero rounding mode to implement RLibm's polynomial approximations. We propose fast, error-free transformations to emulate a round-to-zero result from any standard rounding mode without changing the rounding mode. Second, our rounding-invariant input bounds method factors any rounding error due to different rounding modes using interval bounds in the RLibm pipeline. Both methods make a different set of trade-offs and improve the performance of resulting libraries by more than 2X.
This program is tentative and subject to change.
Wed 18 JunDisplayed time zone: Seoul change
14:00 - 15:20 | Numerics and ApproximationPLDI Research Papers at Cosmos, Violet & Tulip Chair(s): Pavel Panchekha University of Utah | ||
14:00 20mTalk | Solving Floating-Point Constraints with Continuous Optimization PLDI Research Papers Qian Chen Nanjing University, Chenqi Cui Nanjing University, Fengjuan Gao Nanjing University of Science and Technology, Yu Wang Nanjing University, Ke Wang Visa Research, Linzhang Wang Nanjing University DOI | ||
14:20 20mTalk | Support Triangle Machine PLDI Research Papers DOI | ||
14:40 20mTalk | Correctly Rounded Math Libraries without Worrying about the Application’s Rounding Mode PLDI Research Papers Sehyeok Park Rutgers University, Justin Kim Rutgers University, Santosh Nagarakatte Rutgers University DOI | ||
15:00 20mTalk | Bean: A Language for Backward Error Analysis PLDI Research Papers Ariel E. Kellison Cornell University, Laura Zielinski Cornell University, David Bindel Cornell University, Justin Hsu Cornell University DOI |