by Santosh Nagarakatte and Jay Lim on Apr 28, 2022 | Tags: awards, correct math libraries, optimization, runtimes
To create a single polynomial approximation that produces correct results for multiple representations and rounding modes, we propose to generate a polynomial that generates the correctly rounded result of f(x) using the non-standard round-to-odd rounding mode with 2 additional precision bits compared to the largest floating point representation that we wish to support. We provide a proof that this method produces correctly rounded results for multiple representations and for all the standard rounding modes. More detailed explanation of our approach can be found in our POPL 2022 distinguished paper.
Read more...
by Sara Achour on Dec 14, 2021 | Tags: compilers, hardware, optimization, unconventional computing
Modern analog computers a host of analog behaviors that affect the fidelity of the mapped computation. How can we mitigate these analog behaviors in compilation?
Read more...
by Jay Lim and Santosh Nagarakatte on Aug 26, 2021 | Tags: awards, correct math libraries, optimization, program synthesis, runtimes
Everyone uses math libraries. Surprisingly, mainstream math libraries do not produce correct results for several thousands of inputs. Developers are seldom aware of them, which affects reproducibility and portability. We describe our new method for synthesizing elementary functions that produces correct results for all inputs but is also significantly faster than the state of the art libraries, which have been optimized for decades.
Read more...
by Kesha Hietala and Robert Rand on Jun 2, 2021 | Tags: compilers, formal verification, optimization, proof engineering, quantum computing
Learn how techniques from traditional compiler verification can be applied to the emerging domain of quantum computing.
Read more...
by Alastair Donaldson and David MacIver on May 25, 2021 | Tags: compilers, debugging, fuzzing, optimization, program understanding, slicing, test case reduction, testing
Did you think test case reduction was all about debugging? Find out how test case reducers can be used for program optimisation, to generate high coverage tests, for program understanding, and even for fuzzing!
Read more...