Displaying 1 to 9 from 9 results

testingRNG - Testing common random-number generators (RNG)

  •    C++

There are several benchmarks that can be used to test (pseudo-)random number generators (RNG). Of particular interest are TestU01 and PractRand. We want to easily test popular RNGs.It is fine to say that we can, in theory run these tests, but few of us will if it requires too much labor. The purpose of this project is to make it ridiculously easy to run your own tests if you have a mac or a Linux box with a recent C compiler.

schrodingers-rng - Creates random numbers using a webcam attached to a smoke alarm

  •    Python

So you don't trust your operating system's random number generator and you have blisters on your hands from flipping coins to create bitcoin private keys. All your dice have worn out at the corners and every deck of cards you own is severely dog-eared. Whether you need a quantum-tinfoil hat to protect you from malignant hidden non-local variables, or you want a slow but steady stream of truly random bits generated on your Raspberry Pi then you may and may not need a hardware random number generator.

quickrand - Quick Erlang Random Number Generation

  •    Erlang

Provides a simple interface to call efficient random number generation functions based on the context. Proper random number seeding is enforced. random_wh82 is provided as an alternative to the random module which is scheduled to be removed in Erlang/OTP 20.

fastrand - Fast and scalable pseudorandom generator for Go

  •    Go

Fast pseudorandom number generator. It abuses sync.Pool for maintaining "per-CPU" pseudorandom number generators.

nim-random - Random number generation library for Nim

  •    Nim

The following procedures work for every random number generator (import random.*). The first argument is skipped here; it is always var RNG, so you would write, for example, rng.shuffle(arr). You can also do import random and get access to these exact procedures without the first argument. They use a global instance of Mersenne twister, which is seeded using an array of bytes provided by urandom, or, in case of failure, the current time. Due to this silent fallback and the fact that any other code can use this global instance (and there is no thread safety), it is not recommended to do this if you have any concerns for security.

rcppziggurat - Rcpp bindings for different Ziggurat RNG implementations

  •    C++

The RcppZiggurat package regroups a number of implementations of the 'Ziggurat' random number generator by Marsaglia and Tsang (JSS, 2000), both in the original version and via the update by Leong, Zhang, Lee, Luk and Villasenor (JSS, 2005). The purpose of the package is to both study and time these implementations in order to provide a fast N(0,1) generator for use by R. The generators included in R are excellent and very diligently implemented, but not generally the fastest. This package aims to close the performance gap.

rust-zipf - Rust implementation of a fast, bounded, Zipf-distributed random number generator

  •    Rust

It is also both driven by, and provides, a Rust random number generator. This implementation is effectively a direct port of Apache Common's RejectionInversionZipfSampler, written in Java. It is based on the method described by Wolfgang Hörmann and Gerhard Derflinger in Rejection-inversion to generate variates from monotone discrete distributions from ACM Transactions on Modeling and Computer Simulation (TOMACS) 6.3 (1996).