Skip to content
/ CPRNG Public
forked from vigna/CPRNG

Data and code associated with the paper "Computationally easy, spectrally good multipliers for congruential pseudorandom number generators"

Notifications You must be signed in to change notification settings

edoars/CPRNG

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

31 Commits
 
 
 
 
 
 

Repository files navigation

CPRNG

This repository contains data and code associated with the paper “Computationally easy, spectrally good multipliers for congruential pseudorandom number generators”, by Guy Steele and Sebastiano Vigna.

The directory src contains the code used to sample multipliers.

The directory python contains the Python code used to select the multipliers reported in the paper.

The databases of candidate multipliers are available at http://vigna.di.unimi.it/CPRNG.tar.bz2. (The size of the bzip2 file is approximately 14 gigabytes; the unzipped data is approximately 36 gigabytes.)

The databases contain, for each type, state size, and multiplier size, spectral scores (e.g., LCG-128-128 for spectral scores of 128-bit multipliers for LCGs with 128 bits of state) and lagged spectral scores (e.g., MCG-128-3-64 for 3-lagged scores of 64-bit multipliers for MCGs with 128 bits of state). For each multiplier we list the minimum score from dimension 2 to dimension 8, the harmonic score (see the paper) from dimension 2 to dimension 8, the multiplier in decimal and hexadecimal form, and finally the spectral scores from dimension 2 to dimension 8.

About

Data and code associated with the paper "Computationally easy, spectrally good multipliers for congruential pseudorandom number generators"

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 51.8%
  • C 26.4%
  • Python 20.3%
  • Shell 1.5%