This is an automated email from the ASF dual-hosted git repository. aherbert pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-rng.git
commit 5d681da5775127c43f642ec1dec0ac3a5d960b33 Author: aherbert <aherb...@apache.org> AuthorDate: Fri May 10 15:02:43 2019 +0100 RNG-101: Added MarsagliaTsangWang samplers to the JMH benchmark. --- .../jmh/distribution/DiscreteSamplersPerformance.java | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/commons-rng-examples/examples-jmh/src/main/java/org/apache/commons/rng/examples/jmh/distribution/DiscreteSamplersPerformance.java b/commons-rng-examples/examples-jmh/src/main/java/org/apache/commons/rng/examples/jmh/distribution/DiscreteSamplersPerformance.java index eef191e..81dc616 100644 --- a/commons-rng-examples/examples-jmh/src/main/java/org/apache/commons/rng/examples/jmh/distribution/DiscreteSamplersPerformance.java +++ b/commons-rng-examples/examples-jmh/src/main/java/org/apache/commons/rng/examples/jmh/distribution/DiscreteSamplersPerformance.java @@ -23,6 +23,9 @@ import org.apache.commons.rng.sampling.distribution.DiscreteSampler; import org.apache.commons.rng.sampling.distribution.DiscreteUniformSampler; import org.apache.commons.rng.sampling.distribution.GeometricSampler; import org.apache.commons.rng.sampling.distribution.LargeMeanPoissonSampler; +import org.apache.commons.rng.sampling.distribution.MarsagliaTsangWangBinomialSampler; +import org.apache.commons.rng.sampling.distribution.MarsagliaTsangWangDiscreteSampler; +import org.apache.commons.rng.sampling.distribution.MarsagliaTsangWangSmallMeanPoissonSampler; import org.apache.commons.rng.sampling.distribution.RejectionInversionZipfSampler; import org.apache.commons.rng.sampling.distribution.SmallMeanPoissonSampler; @@ -66,6 +69,9 @@ public class DiscreteSamplersPerformance { "SmallMeanPoissonSampler", "LargeMeanPoissonSampler", "GeometricSampler", + "MarsagliaTsangWangDiscreteSampler", + "MarsagliaTsangWangSmallMeanPoissonSampler", + "MarsagliaTsangWangBinomialSampler", }) private String samplerType; @@ -96,6 +102,12 @@ public class DiscreteSamplersPerformance { sampler = new LargeMeanPoissonSampler(rng, 41.7); } else if ("GeometricSampler".equals(samplerType)) { sampler = new GeometricSampler(rng, 0.21); + } else if ("MarsagliaTsangWangDiscreteSampler".equals(samplerType)) { + sampler = new MarsagliaTsangWangDiscreteSampler(rng, new double[] {0.1, 0.2, 0.3, 0.4}); + } else if ("MarsagliaTsangWangSmallMeanPoissonSampler".equals(samplerType)) { + sampler = new MarsagliaTsangWangSmallMeanPoissonSampler(rng, 8.9); + } else if ("MarsagliaTsangWangBinomialSampler".equals(samplerType)) { + sampler = new MarsagliaTsangWangBinomialSampler(rng, 20, 0.33); } } }