Related papers: A revision of the subtract-with-borrow random numb…
High energy physics has a constant demand for random number generators (RNGs) with high statistical quality. In this paper, we present ROOT's implementation of the RANLUX++ generator. We discuss the choice of relying only on standard C++…
Basic uniform pseudo-random number generators are implemented on ATI Graphics Processing Units (GPU). The performance results of the realized generators (multiplicative linear congruential (GGL), XOR-shift (XOR128), RANECU, RANMAR, RANLUX…
This is a review of pseudorandom number generators (RNG's) of the highest quality, suitable for use in the most demanding Monte Carlo calculations. All the RNG's we recommend here are based on the Kolmogorov-Anosov theory of mixing in…
We introduce the Romu family of pseudo-random number generators (PRNGs) which combines the nonlinear operation of rotation with the linear operations of multiplication and (optionally) addition. Compared to conventional linear-only PRNGs,…
Conventional random number generators provide the speed but not necessarily the high quality output streams needed for large-scale stochastic simulations. Cryptographically-based generators, on the other hand, provide superior quality…
A C library for random number generation, Randompack, is presented. The library implements several modern random number generators (engines), including xoshiro256, PCG64, Philox, ranlux++, and sfc64; 14 continuous distributions including…
Fast secure random number generation is essential for high-speed encrypted communication, and is the backbone of information security. Generation of truly random numbers depends on the intrinsic randomness of the process used and is usually…
It is well-known that the quality of random number generators can often be improved by combining several generators, e.g. by summing or subtracting their results. In this paper we investigate the ratio of two random number generators as an…
Rectifier neuron units (ReLUs) have been widely used in deep convolutional networks. An ReLU converts negative values to zeros, and does not change positive values, which leads to a high sparsity of neurons. In this work, we first examine…
Randomness extraction is a key problem in cryptography and theoretical computer science. With the recent rapid development of quantum cryptography, quantum-proof randomness extraction has also been widely studied, addressing the security…
Pseudorandom number generators are required for many computational tasks, such as stochastic modelling and simulation. This paper investigates the serial CPU and parallel GPU implementation of a Linear Congruential Generator based on the…
In this paper we introduce RADULS2, the fastest parallel sorter based on radix algorithm. It is optimized to process huge amounts of data making use of modern multicore CPUs. The main novelties include: extremely optimized algorithm for…
Quantum random number generation is a technique to generate random numbers by extracting randomness from specific quantum processes. As for practical random number generators, they are required not only to have no information leakage but…
$\mathbf F_2$-linear pseudorandom number generators are very popular due to their high speed, to the ease with which generators with a sizable state space can be created, and to their provable theoretical properties. However, they suffer…
The Ziggurat Algorithm is a very fast rejection sampling method for generating PseudoRandom Numbers (PRNs) from common statistical distributions. The algorithm divides a distribution into rectangular layers that stack on top of each other…
The future of high-performance computing is aligning itself towards the efficient use of highly parallel computing environments. One application where the use of massive parallelism comes instinctively is Monte Carlo simulations, where a…
Dense linear algebra kernels, such as linear solvers or tensor contractions, are fundamental components of many scientific computing applications. In this work, we present a novel method of deriving parallel I/O lower bounds for this broad…
Many Random Number Generators (RNG) are available nowadays; they are divided in two categories, hardware RNG, that provide "true" random numbers, and algorithmic RNG, that generate pseudo random numbers (PRNG). Both types usually generate…
Capacity is an important tool in decision-making under risk and uncertainty and multi-criteria decision-making. When learning a capacity-based model, it is important to be able to generate uniformly a capacity. Due to the monotonicity…
Delay differential equations (DDE) can have "chaotic" solutions that can be used to mimic Brownian motion. Since a Brownian motion is random in its velocity, it is reasonable to think that a random number generator (RNG) might be…