Skip to content

Comment on Zero Tolerance for Biasparent

Comments

You will still get better results when avoiding the bias, even with a non-CSPRNG. Their bias is much smaller.

Avoiding the division can be faster, especially if you sample many numbers from the same range. But it depends on the use case.

You can generate so many megabytes of random per second with a CSPRNG though. I really don't see the use case where you care about bias enough to use very careful range functions but don't want to bother with a better generator.

In Monte Carlo simulations you usually don't care about predictability (so using a non-CSPRNG is fine), but statistical bias may compromise your results.

But I agree that a CSPRNG should be the default.

If the modulus fits in 16 bits and the raw random number is 64 bits I don't think your results are going to be compromised.

AboutSource Built by g1lg1l

Hackerly is an independent reader for Hacker News, built on the public HN API. Not affiliated with Y Combinator.