RFR: 8326227: Rounding error that may distort computeNextGaussian results

Chris Hennick duke at openjdk.org
Wed Feb 21 03:13:55 UTC 2024


On Tue, 20 Feb 2024 20:46:47 GMT, Joe Darcy <darcy at openjdk.org> wrote:

>> This provides a slightly more accurate bounding limit for `computeNextExponentialSoftCapped` when the computed bound is greater than `(1.0p53 - 1.0) * DoubleZigguratTables.exponentialX0`. This could cause the `while (computeNextExponentialSoftCapped(rng, limit) < limit)` check in `computeNextGaussian` on line 1402 to always be true, making the `nextGaussian` runtime unbounded in the worst case.
>
> Is it practical to write a regression test for this situation?

@jddarcy Added a regression test. Once some of my GitHub Actions runners are free to run it, https://github.com/Pr0methean/jdk/actions/runs/7983430797 will confirm that the test fails without the fix.

-------------

PR Comment: https://git.openjdk.org/jdk/pull/17703#issuecomment-1955797533


More information about the core-libs-dev mailing list