Git Product home page Git Product logo

Comments (3)

flyingmutant avatar flyingmutant commented on June 11, 2024

[257]float64 tables for cross-reference: https://github.com/rust-random/rand/blob/master/rand_distr/src/ziggurat_tables.rs

from rand.

flyingmutant avatar flyingmutant commented on June 11, 2024

As of f8e4ae0, the quality is probably about as high as we can get without increasing the table sizes. Speed is mainly handicapped (greatly) by inability of the compiler to inline the functions; however, I can't get anywhere near the 80 inlining cost (hovering around 140, because the call to the slow-path function alone is around 60).

from rand.

flyingmutant avatar flyingmutant commented on June 11, 2024

PractRand results for NormFloat64 and ExpFloat64: math/rand, x/exp/rand.

Improved NormFloat64:

RNG_test using PractRand version 0.95
RNG = RNG_stdin64, seed = unknown
test set = core, folding = standard (64 bit)

rng=RNG_stdin64, seed=unknown
length= 128 megabytes (2^27 bytes), time= 2.5 seconds
  no anomalies in 196 test result(s)

rng=RNG_stdin64, seed=unknown
length= 256 megabytes (2^28 bytes), time= 7.0 seconds
  no anomalies in 213 test result(s)

rng=RNG_stdin64, seed=unknown
length= 512 megabytes (2^29 bytes), time= 13.2 seconds
  no anomalies in 229 test result(s)

rng=RNG_stdin64, seed=unknown
length= 1 gigabyte (2^30 bytes), time= 23.6 seconds
  no anomalies in 246 test result(s)

rng=RNG_stdin64, seed=unknown
length= 2 gigabytes (2^31 bytes), time= 42.5 seconds
  no anomalies in 263 test result(s)

rng=RNG_stdin64, seed=unknown
length= 4 gigabytes (2^32 bytes), time= 78.1 seconds
  no anomalies in 279 test result(s)

rng=RNG_stdin64, seed=unknown
length= 8 gigabytes (2^33 bytes), time= 148 seconds
  no anomalies in 295 test result(s)

rng=RNG_stdin64, seed=unknown
length= 16 gigabytes (2^34 bytes), time= 287 seconds
  no anomalies in 311 test result(s)

rng=RNG_stdin64, seed=unknown
length= 32 gigabytes (2^35 bytes), time= 564 seconds
  no anomalies in 325 test result(s)

rng=RNG_stdin64, seed=unknown
length= 64 gigabytes (2^36 bytes), time= 1121 seconds
  no anomalies in 340 test result(s)

rng=RNG_stdin64, seed=unknown
length= 128 gigabytes (2^37 bytes), time= 2244 seconds
  no anomalies in 355 test result(s)

rng=RNG_stdin64, seed=unknown
length= 256 gigabytes (2^38 bytes), time= 4461 seconds
  no anomalies in 369 test result(s)

rng=RNG_stdin64, seed=unknown
length= 512 gigabytes (2^39 bytes), time= 8960 seconds
  no anomalies in 383 test result(s)

rng=RNG_stdin64, seed=unknown
length= 1 terabyte (2^40 bytes), time= 17852 seconds
  no anomalies in 397 test result(s)

rng=RNG_stdin64, seed=unknown
length= 2 terabytes (2^41 bytes), time= 35383 seconds
  no anomalies in 409 test result(s)

rng=RNG_stdin64, seed=unknown
length= 4 terabytes (2^42 bytes), time= 70872 seconds
  no anomalies in 422 test result(s)

rng=RNG_stdin64, seed=unknown
length= 8 terabytes (2^43 bytes), time= 141599 seconds
  no anomalies in 434 test result(s)

Improved ExpFloat64:

RNG_test using PractRand version 0.95
RNG = RNG_stdin64, seed = unknown
test set = core, folding = standard (64 bit)

rng=RNG_stdin64, seed=unknown
length= 128 megabytes (2^27 bytes), time= 2.3 seconds
  no anomalies in 196 test result(s)

rng=RNG_stdin64, seed=unknown
length= 256 megabytes (2^28 bytes), time= 6.5 seconds
  no anomalies in 213 test result(s)

rng=RNG_stdin64, seed=unknown
length= 512 megabytes (2^29 bytes), time= 12.3 seconds
  no anomalies in 229 test result(s)

rng=RNG_stdin64, seed=unknown
length= 1 gigabyte (2^30 bytes), time= 21.8 seconds
  no anomalies in 246 test result(s)

rng=RNG_stdin64, seed=unknown
length= 2 gigabytes (2^31 bytes), time= 38.9 seconds
  no anomalies in 263 test result(s)

rng=RNG_stdin64, seed=unknown
length= 4 gigabytes (2^32 bytes), time= 71.5 seconds
  no anomalies in 279 test result(s)

rng=RNG_stdin64, seed=unknown
length= 8 gigabytes (2^33 bytes), time= 135 seconds
  no anomalies in 295 test result(s)

rng=RNG_stdin64, seed=unknown
length= 16 gigabytes (2^34 bytes), time= 262 seconds
  Test Name                         Raw       Processed     Evaluation
  FPF-14+6/16:all                   R=  -4.6  p =1-4.5e-4   unusual          
  ...and 310 test result(s) without anomalies

rng=RNG_stdin64, seed=unknown
length= 32 gigabytes (2^35 bytes), time= 513 seconds
  Test Name                         Raw       Processed     Evaluation
  DC6-9x1Bytes-1                    R=  -5.3  p =1-1.1e-3   unusual          
  ...and 324 test result(s) without anomalies

rng=RNG_stdin64, seed=unknown
length= 64 gigabytes (2^36 bytes), time= 1022 seconds
  no anomalies in 340 test result(s)

rng=RNG_stdin64, seed=unknown
length= 128 gigabytes (2^37 bytes), time= 2049 seconds
  Test Name                         Raw       Processed     Evaluation
  [Low4/64]DC6-9x1Bytes-1           R=  -5.2  p =1-2.4e-3   unusual          
  ...and 354 test result(s) without anomalies

rng=RNG_stdin64, seed=unknown
length= 256 gigabytes (2^38 bytes), time= 4066 seconds
  no anomalies in 369 test result(s)

rng=RNG_stdin64, seed=unknown
length= 512 gigabytes (2^39 bytes), time= 8177 seconds
  Test Name                         Raw       Processed     Evaluation
  [Low16/64]FPF-14+6/16:cross       R=  -2.5  p =1-2.0e-4   unusual          
  ...and 382 test result(s) without anomalies

rng=RNG_stdin64, seed=unknown
length= 1 terabyte (2^40 bytes), time= 16292 seconds
  Test Name                         Raw       Processed     Evaluation
  [Low16/64]FPF-14+6/16:cross       R=  -2.5  p =1-1.8e-4   unusual          
  ...and 396 test result(s) without anomalies

rng=RNG_stdin64, seed=unknown
length= 2 terabytes (2^41 bytes), time= 32179 seconds
  no anomalies in 409 test result(s)

rng=RNG_stdin64, seed=unknown
length= 4 terabytes (2^42 bytes), time= 64417 seconds
  no anomalies in 422 test result(s)

rng=RNG_stdin64, seed=unknown
length= 8 terabytes (2^43 bytes), time= 129156 seconds
  no anomalies in 434 test result(s)

from rand.

Related Issues (8)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.