RLibm: Rutgers Architecture and Programming Languages Lab's Correctly Rounded Libm

The RLibm project is building a collection of correctly rounded elementary functions for multiple representations ( e.g., 32-bit float, posits, bfloat16, tensorfloat32) for multiple rounding modes. This project makes a case for approximating the correctly rounded result of an elementary function rather than the real value of an elementary function. When we approximate the correctly rounded result, there is an interval of real values around the correctly rounded result such that producing a real value in this interval rounds to the correct result. This interval is the freedom that our approach for polynomial approximation has for an input, which is larger than the freedom with prior approaches (i.e., mini-max approaches). Hence, our RLibm approach has more margin to generate correct, yet, efficient polynomials.

Using these intervals, we structure the problem of generating polynomial approximations that produce correctly rounded results for all inputs as a linear programming problem. We have developed correctly rounded implementations of elementary functions for multiple representations: 32-bit floating point, 32-bit posits, 16-bit posits, bfloat16, and tensorfloat32.

Developers

Collaborators

Code

Talks

Publications

  • RLIBM-ALL: A Novel Polynomial Approximation Method to Produce Correctly Rounded Results for Multiple Representations and Rounding Modes [pdf]
    Jay P Lim and Santosh Nagarakatte
    Department of Computer Science, Rutgers University, Technical Report DCS-TR-757, August 2021

  • High Performance Correctly Rounded Math Libraries for 32-bit Floating Point Representations [preprint]
    Jay P Lim and Santosh Nagarakatte
    Proceedings of the 2021 ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI-2021), June 20-25, 2021.
    Acceptance rate: 27% (87 out of 320 submissions)
    ACM SIGPLAN PLDI 2021 Distinguished Paper Award

  • RLIBM-32: High Performance Correctly Rounded Math Libraries for 32-bit Floating Point Representations [pdf]
    Jay P Lim and Santosh Nagarakatte
    Department of Computer Science, Rutgers University, Technical Report DCS-TR-754, April 2021
    Extended version of our PLDI 2021 paper.
     
  • An Approach to Generate Correctly Rounded Math Libraries for New Floating Point Variants [preprint]
    Jay P Lim, Mridul Aanjaneya, John Gustafson, and Santosh Nagarakatte
    Proceedings of the 2021 ACM SIGPLAN Symposium on Principles of Programming Languages (POPL-2021), Jan 17-22, 2021.
    Acceptance Rate: 23% (61 out of 258 submissions).

  • A Novel Approach to Generate Correctly Rounded Math Libraries for New Floating Point Representations [pdf]
    Jay P Lim, Mridul Aanjaneya, John Gustafson, and Santosh Nagarakatte
    Department of Computer Science, Rutgers University, Technical Report DCS-TR-753, July 2020
     

Funding:

Last modified: Mon August 15 16:00 EST 2021