Repository: commons-rng Updated Branches: refs/heads/master d03aabf6d -> 1084b60a3
Userguide. Removed results produced by "PerfTestUtils" benchmark. Project: http://git-wip-us.apache.org/repos/asf/commons-rng/repo Commit: http://git-wip-us.apache.org/repos/asf/commons-rng/commit/307c661e Tree: http://git-wip-us.apache.org/repos/asf/commons-rng/tree/307c661e Diff: http://git-wip-us.apache.org/repos/asf/commons-rng/diff/307c661e Branch: refs/heads/master Commit: 307c661efa00feea05c3d936fdf7fc368cdcf5ce Parents: d03aabf Author: Gilles <er...@apache.org> Authored: Sun Sep 4 00:46:39 2016 +0200 Committer: Gilles <er...@apache.org> Committed: Sun Sep 4 00:46:39 2016 +0200 ---------------------------------------------------------------------- src/site/apt/userguide/rng.apt | 222 +++++++++++++++++------------------- 1 file changed, 106 insertions(+), 116 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/commons-rng/blob/307c661e/src/site/apt/userguide/rng.apt ---------------------------------------------------------------------- diff --git a/src/site/apt/userguide/rng.apt b/src/site/apt/userguide/rng.apt index 6099097..f610da6 100644 --- a/src/site/apt/userguide/rng.apt +++ b/src/site/apt/userguide/rng.apt @@ -309,7 +309,8 @@ RandomSource.restoreState(rngNew, stateNew); [] - The following tables indicates the performance for generating + The following tables indicate the performance (as measured by + {{{http://openjdk.java.net/projects/code-tools/jmh/}JMH}}) for generating * a sequence of 32-bits integers (a.k.a. Java type <<<int>>>) @@ -319,137 +320,126 @@ RandomSource.restoreState(rngNew, stateNew); [] - The first column is the RNG identifier (see {{{../apidocs/org/apache/commons/rng/RandomSource.html}RandomSource}}). - - Two independent benchmarking tools were used: - - * Commons Math <<<PerfTestUtils>>> + The benchmark code is available in the "src/test" part of the source + code repository (in class <<<GenerationTestPerformance>>>). - * {{{http://openjdk.java.net/projects/code-tools/jmh/}JMH}} + The first column is the RNG identifier (see {{{../apidocs/org/apache/commons/rng/RandomSource.html}RandomSource}}); + the performance value is the ratio of the (JMH) score with respect + to the score of <<<RandomSource.JDK>>>. - [] - - The results of those tools are reported in second and third columns, respectively, where - the value is the ratio of the performance of the implementation with respect to the - corresponding performance of the JDK's <<<java.util.Random>>> class. In these tables, <lower> is <better>. - ** Generating <<<int>>> values - -*---------------------------------*------------------------+--------------+ -|| RNG identifier || Ratio (PerfTestUtils) || Ratio (JMH) | -*---------------------------------*------------------------+--------------+ -| JDK | 1.21 | 1.000 | -*---------------------------------*------------------------+--------------+ -| MT | 1.19 | 0.639 | -*---------------------------------*------------------------+--------------+ -| WELL_512_A | 1.33 | 0.740 | -*---------------------------------*------------------------+--------------+ -| WELL_1024_A | 1.38 | 0.795 | -*---------------------------------*------------------------+--------------+ -| WELL_19937_A | 1.47 | 1.039 | -*---------------------------------*------------------------+--------------+ -| WELL_19937_C | 1.54 | 1.102 | -*---------------------------------*------------------------+--------------+ -| WELL_44497_A | 1.53 | 1.187 | -*---------------------------------*------------------------+--------------+ -| WELL_44497_B | 1.59 | 1.114 | -*---------------------------------*------------------------+--------------+ -| ISAAC | 1.30 | 0.610 | -*---------------------------------*------------------------+--------------+ -| MT_64 | 1.31 | 0.734 | -*---------------------------------*------------------------+--------------+ -| SPLIT_MIX_64 | 1.00 | 0.361 | -*---------------------------------*------------------------+--------------+ -| XOR_SHIFT_1024_S | 1.09 | 0.450 | -*---------------------------------*------------------------+--------------+ -| TWO_CMRES | 1.14 | 0.464 | -*---------------------------------*------------------------+--------------+ -| MWC_256 | ???? | ???? | -*---------------------------------*------------------------+--------------+ -| KISS | ???? | ???? | -*---------------------------------*------------------------+--------------+ - +*--------------------------*----------------+ +|| RNG identifier || Score ratio | +*--------------------------*----------------+ +| MWC_256 | 0.42168 | +*--------------------------*----------------+ +| SPLIT_MIX_64 | 0.42845 | +*--------------------------*----------------+ +| TWO_CMRES | 0.46360 | +*--------------------------*----------------+ +| XOR_SHIFT_1024_S | 0.48818 | +*--------------------------*----------------+ +| ISAAC | 0.56263 | +*--------------------------*----------------+ +| KISS | 0.56340 | +*--------------------------*----------------+ +| MT_64 | 0.62591 | +*--------------------------*----------------+ +| MT | 0.65198 | +*--------------------------*----------------+ +| WELL_512_A | 0.83364 | +*--------------------------*----------------+ +| WELL_1024_A | 0.88204 | +*--------------------------*----------------+ +| WELL_44497_A | 0.99618 | +*--------------------------*----------------+ +| JDK | 1.00000 | +*--------------------------*----------------+ +| WELL_44497_B | 1.00641 | +*--------------------------*----------------+ +| WELL_19937_A | 1.09770 | +*--------------------------*----------------+ +| WELL_19937_C | 1.13420 | +*--------------------------*----------------+ ** Generating <<<long>>> values - -*---------------------------------*------------------------+--------------+ -|| RNG identifier || Ratio (PerfTestUtils) || Ratio (JMH) | -*---------------------------------*------------------------+--------------+ -| JDK | 1.40 | 1.002 | -*---------------------------------*------------------------+--------------+ -| MT | 0.85 | 0.569 | -*---------------------------------*------------------------+--------------+ -| WELL_512_A | 1.05 | 0.798 | -*---------------------------------*------------------------+--------------+ -| WELL_1024_A | 1.08 | 0.873 | -*---------------------------------*------------------------+--------------+ -| WELL_19937_A | 1.21 | 0.968 | -*---------------------------------*------------------------+--------------+ -| WELL_19937_C | 1.27 | 1.020 | -*---------------------------------*------------------------+--------------+ -| WELL_44497_A | 1.26 | 1.103 | -*---------------------------------*------------------------+--------------+ -| WELL_44497_B | 1.31 | 1.043 | -*---------------------------------*------------------------+--------------+ -| ISAAC | 0.96 | 0.515 | -*---------------------------------*------------------------+--------------+ -| MT_64 | 0.67 | 0.343 | -*---------------------------------*------------------------+--------------+ -| SPLIT_MIX_64 | 0.55 | 0.175 | -*---------------------------------*------------------------+--------------+ -| XOR_SHIFT_1024_S | 0.59 | 0.207 | -*---------------------------------*------------------------+--------------+ -| TWO_CMRES | 0.61 | 0.223 | -*---------------------------------*------------------------+--------------+ -| MWC_256 | ???? | ???? | -*---------------------------------*------------------------+--------------+ -| KISS | ???? | ???? | -*---------------------------------*------------------------+--------------+ - +*--------------------------*----------------+ +|| RNG identifier || Score ratio | +*--------------------------*----------------+ +| SPLIT_MIX_64 | 0.23505 | +*--------------------------*----------------+ +| XOR_SHIFT_1024_S | 0.26918 | +*--------------------------*----------------+ +| TWO_CMRES | 0.28069 | +*--------------------------*----------------+ +| MT_64 | 0.34193 | +*--------------------------*----------------+ +| MWC_256 | 0.40359 | +*--------------------------*----------------+ +| KISS | 0.55043 | +*--------------------------*----------------+ +| MT | 0.63092 | +*--------------------------*----------------+ +| ISAAC | 0.63944 | +*--------------------------*----------------+ +| WELL_512_A | 0.65085 | +*--------------------------*----------------+ +| WELL_1024_A | 0.71561 | +*--------------------------*----------------+ +| JDK | 1.00000 | +*--------------------------*----------------+ +| WELL_19937_A | 1.03761 | +*--------------------------*----------------+ +| WELL_44497_A | 1.06495 | +*--------------------------*----------------+ +| WELL_44497_B | 1.14565 | +*--------------------------*----------------+ +| WELL_19937_C | 1.23338 | +*--------------------------*----------------+ ** Generating <<<double>>> values +*--------------------------*----------------+ +|| RNG identifier || Score ratio | +*--------------------------*----------------+ +| SPLIT_MIX_64 | 0.28609 | +*--------------------------*----------------+ +| XOR_SHIFT_1024_S | 0.32866 | +*--------------------------*----------------+ +| TWO_CMRES | 0.34069 | +*--------------------------*----------------+ +| MWC_256 | 0.39083 | +*--------------------------*----------------+ +| MT_64 | 0.39368 | +*--------------------------*----------------+ +| KISS | 0.60581 | +*--------------------------*----------------+ +| ISAAC | 0.64429 | +*--------------------------*----------------+ +| MT | 0.67086 | +*--------------------------*----------------+ +| WELL_1024_A | 0.73629 | +*--------------------------*----------------+ +| WELL_512_A | 0.78037 | +*--------------------------*----------------+ +| JDK | 1.00000 | +*--------------------------*----------------+ +| WELL_19937_A | 1.11497 | +*--------------------------*----------------+ +| WELL_44497_A | 1.13362 | +*--------------------------*----------------+ +| WELL_19937_C | 1.15334 | +*--------------------------*----------------+ +| WELL_44497_B | 1.22613 | +*--------------------------*----------------+ -*---------------------------------*------------------------+--------------+ -|| RNG identifier || Ratio (PerfTestUtils) || Ratio (JMH) | -*---------------------------------*------------------------+--------------+ -| JDK | 1.15 | 1.001 | -*---------------------------------*------------------------+--------------+ -| MT | 0.86 | 0.614 | -*---------------------------------*------------------------+--------------+ -| WELL_512_A | 1.08 | 0.839 | -*---------------------------------*------------------------+--------------+ -| WELL_1024_A | 1.11 | 0.899 | -*---------------------------------*------------------------+--------------+ -| WELL_19937_A | 1.23 | 0.984 | -*---------------------------------*------------------------+--------------+ -| WELL_19937_C | 1.29 | 1.069 | -*---------------------------------*------------------------+--------------+ -| WELL_44497_A | 1.28 | 1.125 | -*---------------------------------*------------------------+--------------+ -| WELL_44497_B | 1.33 | 1.093 | -*---------------------------------*------------------------+--------------+ -| ISAAC | 0.98 | 0.583 | -*---------------------------------*------------------------+--------------+ -| MT_64 | 0.66 | 0.391 | -*---------------------------------*------------------------+--------------+ -| SPLIT_MIX_64 | 0.57 | 0.226 | -*---------------------------------*------------------------+--------------+ -| XOR_SHIFT_1024_S | 0.59 | 0.262 | -*---------------------------------*------------------------+--------------+ -| TWO_CMRES | 0.60 | 0.284 | -*---------------------------------*------------------------+--------------+ -| MWC_256 | ???? | ???? | -*---------------------------------*------------------------+--------------+ -| KISS | ???? | ???? | -*---------------------------------*------------------------+--------------+ 4. Quality